{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "device:  cpu\n"
     ]
    }
   ],
   "source": [
    "# Assume path is root directory\n",
    "import numpy as np\n",
    "import torch\n",
    "import os\n",
    "import matplotlib.pyplot as plt\n",
    "import time as time\n",
    "import unittest\n",
    "\n",
    "import sys\n",
    "root_dir = \"../\"\n",
    "sys.path.append(root_dir)\n",
    "\n",
    "\n",
    "from src.models import ShortestPathNet, Cvx_ShortestPathNet, Pert_ShortestPathNet, BB_ShortestPathNet\n",
    "from src.models import DYS_Warcraft_Net, Pert_Warcraft_Net\n",
    "from src.trainer import trainer\n",
    "from src.utils import edge_to_node, node_to_edge\n",
    "\n",
    "## Set device\n",
    "device = 'cpu'\n",
    "print('device: ', device)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "grid_size = 12\n",
    "base_data_path = '../src/warcraft/warcraft_data/'\n",
    "\n",
    "## Load data\n",
    "data_path = base_data_path + 'Warcraft_training_data'+str(grid_size)+'.pth'\n",
    "state = torch.load(data_path)\n",
    "\n",
    "## Extract data from state\n",
    "train_dataset_e = state['train_dataset_e']\n",
    "test_dataset_e = state['test_dataset_e']\n",
    "train_dataset_v = state['train_dataset_v']\n",
    "test_dataset_v = state['test_dataset_v']\n",
    "\n",
    "grid_size = state[\"m\"]\n",
    "A = state[\"A\"].float()\n",
    "b = state[\"b\"].float()\n",
    "num_edges = state[\"num_edges\"]\n",
    "edge_list = state[\"edge_list\"]\n",
    "edge_list_torch = torch.tensor(edge_list)\n",
    "\n",
    "A = A.to(device)\n",
    "b = b.to(device)\n",
    "\n",
    "# ## Load model/network\n",
    "# DYS_net = DYS_Warcraft_Net(A, b, edge_list, num_edges=num_edges, device=device)\n",
    "# DYS_net.to(device)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "usage: ipykernel_launcher.py [-h] [-v] [-q] [--locals] [-f] [-c] [-b]\n",
      "                             [-k TESTNAMEPATTERNS]\n",
      "                             [tests ...]\n",
      "ipykernel_launcher.py: error: argument -f/--failfast: ignored explicit argument '/Users/danielmckenzie/Library/Jupyter/runtime/kernel-v2-14446IgRUVdhpgaqQ.json'\n"
     ]
    },
    {
     "ename": "AssertionError",
     "evalue": "",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mArgumentError\u001b[0m                             Traceback (most recent call last)",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/argparse.py:1859\u001b[0m, in \u001b[0;36mArgumentParser.parse_known_args\u001b[0;34m(self, args, namespace)\u001b[0m\n\u001b[1;32m   1858\u001b[0m \u001b[39mtry\u001b[39;00m:\n\u001b[0;32m-> 1859\u001b[0m     namespace, args \u001b[39m=\u001b[39m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49m_parse_known_args(args, namespace)\n\u001b[1;32m   1860\u001b[0m \u001b[39mexcept\u001b[39;00m ArgumentError:\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/argparse.py:2072\u001b[0m, in \u001b[0;36mArgumentParser._parse_known_args\u001b[0;34m(self, arg_strings, namespace)\u001b[0m\n\u001b[1;32m   2071\u001b[0m     \u001b[39m# consume the next optional and any arguments for it\u001b[39;00m\n\u001b[0;32m-> 2072\u001b[0m     start_index \u001b[39m=\u001b[39m consume_optional(start_index)\n\u001b[1;32m   2074\u001b[0m \u001b[39m# consume any positionals following the last Optional\u001b[39;00m\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/argparse.py:1994\u001b[0m, in \u001b[0;36mArgumentParser._parse_known_args.<locals>.consume_optional\u001b[0;34m(start_index)\u001b[0m\n\u001b[1;32m   1993\u001b[0m         msg \u001b[39m=\u001b[39m _(\u001b[39m'\u001b[39m\u001b[39mignored explicit argument \u001b[39m\u001b[39m%r\u001b[39;00m\u001b[39m'\u001b[39m)\n\u001b[0;32m-> 1994\u001b[0m         \u001b[39mraise\u001b[39;00m ArgumentError(action, msg \u001b[39m%\u001b[39m explicit_arg)\n\u001b[1;32m   1996\u001b[0m \u001b[39m# if there is no explicit argument, try to match the\u001b[39;00m\n\u001b[1;32m   1997\u001b[0m \u001b[39m# optional's string arguments with the following strings\u001b[39;00m\n\u001b[1;32m   1998\u001b[0m \u001b[39m# if successful, exit the loop\u001b[39;00m\n\u001b[1;32m   1999\u001b[0m \u001b[39melse\u001b[39;00m:\n",
      "\u001b[0;31mArgumentError\u001b[0m: argument -f/--failfast: ignored explicit argument '/Users/danielmckenzie/Library/Jupyter/runtime/kernel-v2-14446IgRUVdhpgaqQ.json'",
      "\nDuring handling of the above exception, another exception occurred:\n",
      "\u001b[0;31mSystemExit\u001b[0m                                Traceback (most recent call last)",
      "    \u001b[0;31m[... skipping hidden 1 frame]\u001b[0m\n",
      "Cell \u001b[0;32mIn[3], line 13\u001b[0m\n\u001b[1;32m     12\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39m__name__\u001b[39m \u001b[39m==\u001b[39m \u001b[39m'\u001b[39m\u001b[39m__main__\u001b[39m\u001b[39m'\u001b[39m:\n\u001b[0;32m---> 13\u001b[0m     unittest\u001b[39m.\u001b[39;49mmain()\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/main.py:100\u001b[0m, in \u001b[0;36mTestProgram.__init__\u001b[0;34m(self, module, defaultTest, argv, testRunner, testLoader, exit, verbosity, failfast, catchbreak, buffer, warnings, tb_locals)\u001b[0m\n\u001b[1;32m     99\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mprogName \u001b[39m=\u001b[39m os\u001b[39m.\u001b[39mpath\u001b[39m.\u001b[39mbasename(argv[\u001b[39m0\u001b[39m])\n\u001b[0;32m--> 100\u001b[0m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mparseArgs(argv)\n\u001b[1;32m    101\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mrunTests()\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/main.py:133\u001b[0m, in \u001b[0;36mTestProgram.parseArgs\u001b[0;34m(self, argv)\u001b[0m\n\u001b[1;32m    132\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[0;32m--> 133\u001b[0m     \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49m_main_parser\u001b[39m.\u001b[39;49mparse_args(argv[\u001b[39m1\u001b[39;49m:], \u001b[39mself\u001b[39;49m)\n\u001b[1;32m    135\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mtests:\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/argparse.py:1826\u001b[0m, in \u001b[0;36mArgumentParser.parse_args\u001b[0;34m(self, args, namespace)\u001b[0m\n\u001b[1;32m   1825\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mparse_args\u001b[39m(\u001b[39mself\u001b[39m, args\u001b[39m=\u001b[39m\u001b[39mNone\u001b[39;00m, namespace\u001b[39m=\u001b[39m\u001b[39mNone\u001b[39;00m):\n\u001b[0;32m-> 1826\u001b[0m     args, argv \u001b[39m=\u001b[39m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mparse_known_args(args, namespace)\n\u001b[1;32m   1827\u001b[0m     \u001b[39mif\u001b[39;00m argv:\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/argparse.py:1862\u001b[0m, in \u001b[0;36mArgumentParser.parse_known_args\u001b[0;34m(self, args, namespace)\u001b[0m\n\u001b[1;32m   1861\u001b[0m         err \u001b[39m=\u001b[39m _sys\u001b[39m.\u001b[39mexc_info()[\u001b[39m1\u001b[39m]\n\u001b[0;32m-> 1862\u001b[0m         \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49merror(\u001b[39mstr\u001b[39;49m(err))\n\u001b[1;32m   1863\u001b[0m \u001b[39melse\u001b[39;00m:\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/argparse.py:2587\u001b[0m, in \u001b[0;36mArgumentParser.error\u001b[0;34m(self, message)\u001b[0m\n\u001b[1;32m   2586\u001b[0m args \u001b[39m=\u001b[39m {\u001b[39m'\u001b[39m\u001b[39mprog\u001b[39m\u001b[39m'\u001b[39m: \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mprog, \u001b[39m'\u001b[39m\u001b[39mmessage\u001b[39m\u001b[39m'\u001b[39m: message}\n\u001b[0;32m-> 2587\u001b[0m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mexit(\u001b[39m2\u001b[39;49m, _(\u001b[39m'\u001b[39;49m\u001b[39m%(prog)s\u001b[39;49;00m\u001b[39m: error: \u001b[39;49m\u001b[39m%(message)s\u001b[39;49;00m\u001b[39m\\n\u001b[39;49;00m\u001b[39m'\u001b[39;49m) \u001b[39m%\u001b[39;49m args)\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/argparse.py:2574\u001b[0m, in \u001b[0;36mArgumentParser.exit\u001b[0;34m(self, status, message)\u001b[0m\n\u001b[1;32m   2573\u001b[0m     \u001b[39mself\u001b[39m\u001b[39m.\u001b[39m_print_message(message, _sys\u001b[39m.\u001b[39mstderr)\n\u001b[0;32m-> 2574\u001b[0m _sys\u001b[39m.\u001b[39;49mexit(status)\n",
      "\u001b[0;31mSystemExit\u001b[0m: 2",
      "\nDuring handling of the above exception, another exception occurred:\n",
      "\u001b[0;31mAssertionError\u001b[0m                            Traceback (most recent call last)",
      "    \u001b[0;31m[... skipping hidden 1 frame]\u001b[0m\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/IPython/core/interactiveshell.py:2047\u001b[0m, in \u001b[0;36mInteractiveShell.showtraceback\u001b[0;34m(self, exc_tuple, filename, tb_offset, exception_only, running_compiled_code)\u001b[0m\n\u001b[1;32m   2044\u001b[0m \u001b[39mif\u001b[39;00m exception_only:\n\u001b[1;32m   2045\u001b[0m     stb \u001b[39m=\u001b[39m [\u001b[39m'\u001b[39m\u001b[39mAn exception has occurred, use \u001b[39m\u001b[39m%\u001b[39m\u001b[39mtb to see \u001b[39m\u001b[39m'\u001b[39m\n\u001b[1;32m   2046\u001b[0m            \u001b[39m'\u001b[39m\u001b[39mthe full traceback.\u001b[39m\u001b[39m\\n\u001b[39;00m\u001b[39m'\u001b[39m]\n\u001b[0;32m-> 2047\u001b[0m     stb\u001b[39m.\u001b[39mextend(\u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mInteractiveTB\u001b[39m.\u001b[39;49mget_exception_only(etype,\n\u001b[1;32m   2048\u001b[0m                                                      value))\n\u001b[1;32m   2049\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[1;32m   2050\u001b[0m     \u001b[39mtry\u001b[39;00m:\n\u001b[1;32m   2051\u001b[0m         \u001b[39m# Exception classes can customise their traceback - we\u001b[39;00m\n\u001b[1;32m   2052\u001b[0m         \u001b[39m# use this in IPython.parallel for exceptions occurring\u001b[39;00m\n\u001b[1;32m   2053\u001b[0m         \u001b[39m# in the engines. This should return a list of strings.\u001b[39;00m\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/IPython/core/ultratb.py:585\u001b[0m, in \u001b[0;36mListTB.get_exception_only\u001b[0;34m(self, etype, value)\u001b[0m\n\u001b[1;32m    577\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mget_exception_only\u001b[39m(\u001b[39mself\u001b[39m, etype, value):\n\u001b[1;32m    578\u001b[0m \u001b[39m    \u001b[39m\u001b[39m\"\"\"Only print the exception type and message, without a traceback.\u001b[39;00m\n\u001b[1;32m    579\u001b[0m \n\u001b[1;32m    580\u001b[0m \u001b[39m    Parameters\u001b[39;00m\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    583\u001b[0m \u001b[39m    value : exception value\u001b[39;00m\n\u001b[1;32m    584\u001b[0m \u001b[39m    \"\"\"\u001b[39;00m\n\u001b[0;32m--> 585\u001b[0m     \u001b[39mreturn\u001b[39;00m ListTB\u001b[39m.\u001b[39;49mstructured_traceback(\u001b[39mself\u001b[39;49m, etype, value)\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/IPython/core/ultratb.py:452\u001b[0m, in \u001b[0;36mListTB.structured_traceback\u001b[0;34m(self, etype, evalue, etb, tb_offset, context)\u001b[0m\n\u001b[1;32m    449\u001b[0m     chained_exc_ids\u001b[39m.\u001b[39madd(\u001b[39mid\u001b[39m(exception[\u001b[39m1\u001b[39m]))\n\u001b[1;32m    450\u001b[0m     chained_exceptions_tb_offset \u001b[39m=\u001b[39m \u001b[39m0\u001b[39m\n\u001b[1;32m    451\u001b[0m     out_list \u001b[39m=\u001b[39m (\n\u001b[0;32m--> 452\u001b[0m         \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mstructured_traceback(\n\u001b[1;32m    453\u001b[0m             etype, evalue, (etb, chained_exc_ids),\n\u001b[1;32m    454\u001b[0m             chained_exceptions_tb_offset, context)\n\u001b[1;32m    455\u001b[0m         \u001b[39m+\u001b[39m chained_exception_message\n\u001b[1;32m    456\u001b[0m         \u001b[39m+\u001b[39m out_list)\n\u001b[1;32m    458\u001b[0m \u001b[39mreturn\u001b[39;00m out_list\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/IPython/core/ultratb.py:1118\u001b[0m, in \u001b[0;36mAutoFormattedTB.structured_traceback\u001b[0;34m(self, etype, value, tb, tb_offset, number_of_lines_of_context)\u001b[0m\n\u001b[1;32m   1116\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[1;32m   1117\u001b[0m     \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mtb \u001b[39m=\u001b[39m tb\n\u001b[0;32m-> 1118\u001b[0m \u001b[39mreturn\u001b[39;00m FormattedTB\u001b[39m.\u001b[39;49mstructured_traceback(\n\u001b[1;32m   1119\u001b[0m     \u001b[39mself\u001b[39;49m, etype, value, tb, tb_offset, number_of_lines_of_context)\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/IPython/core/ultratb.py:1012\u001b[0m, in \u001b[0;36mFormattedTB.structured_traceback\u001b[0;34m(self, etype, value, tb, tb_offset, number_of_lines_of_context)\u001b[0m\n\u001b[1;32m   1009\u001b[0m mode \u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mmode\n\u001b[1;32m   1010\u001b[0m \u001b[39mif\u001b[39;00m mode \u001b[39min\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mverbose_modes:\n\u001b[1;32m   1011\u001b[0m     \u001b[39m# Verbose modes need a full traceback\u001b[39;00m\n\u001b[0;32m-> 1012\u001b[0m     \u001b[39mreturn\u001b[39;00m VerboseTB\u001b[39m.\u001b[39;49mstructured_traceback(\n\u001b[1;32m   1013\u001b[0m         \u001b[39mself\u001b[39;49m, etype, value, tb, tb_offset, number_of_lines_of_context\n\u001b[1;32m   1014\u001b[0m     )\n\u001b[1;32m   1015\u001b[0m \u001b[39melif\u001b[39;00m mode \u001b[39m==\u001b[39m \u001b[39m'\u001b[39m\u001b[39mMinimal\u001b[39m\u001b[39m'\u001b[39m:\n\u001b[1;32m   1016\u001b[0m     \u001b[39mreturn\u001b[39;00m ListTB\u001b[39m.\u001b[39mget_exception_only(\u001b[39mself\u001b[39m, etype, value)\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/IPython/core/ultratb.py:865\u001b[0m, in \u001b[0;36mVerboseTB.structured_traceback\u001b[0;34m(self, etype, evalue, etb, tb_offset, number_of_lines_of_context)\u001b[0m\n\u001b[1;32m    856\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mstructured_traceback\u001b[39m(\n\u001b[1;32m    857\u001b[0m     \u001b[39mself\u001b[39m,\n\u001b[1;32m    858\u001b[0m     etype: \u001b[39mtype\u001b[39m,\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    862\u001b[0m     number_of_lines_of_context: \u001b[39mint\u001b[39m \u001b[39m=\u001b[39m \u001b[39m5\u001b[39m,\n\u001b[1;32m    863\u001b[0m ):\n\u001b[1;32m    864\u001b[0m \u001b[39m    \u001b[39m\u001b[39m\"\"\"Return a nice text document describing the traceback.\"\"\"\u001b[39;00m\n\u001b[0;32m--> 865\u001b[0m     formatted_exception \u001b[39m=\u001b[39m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mformat_exception_as_a_whole(etype, evalue, etb, number_of_lines_of_context,\n\u001b[1;32m    866\u001b[0m                                                            tb_offset)\n\u001b[1;32m    868\u001b[0m     colors \u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mColors  \u001b[39m# just a shorthand + quicker name lookup\u001b[39;00m\n\u001b[1;32m    869\u001b[0m     colorsnormal \u001b[39m=\u001b[39m colors\u001b[39m.\u001b[39mNormal  \u001b[39m# used a lot\u001b[39;00m\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/IPython/core/ultratb.py:799\u001b[0m, in \u001b[0;36mVerboseTB.format_exception_as_a_whole\u001b[0;34m(self, etype, evalue, etb, number_of_lines_of_context, tb_offset)\u001b[0m\n\u001b[1;32m    796\u001b[0m \u001b[39massert\u001b[39;00m \u001b[39misinstance\u001b[39m(tb_offset, \u001b[39mint\u001b[39m)\n\u001b[1;32m    797\u001b[0m head \u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mprepare_header(etype, \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mlong_header)\n\u001b[1;32m    798\u001b[0m records \u001b[39m=\u001b[39m (\n\u001b[0;32m--> 799\u001b[0m     \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mget_records(etb, number_of_lines_of_context, tb_offset) \u001b[39mif\u001b[39;00m etb \u001b[39melse\u001b[39;00m []\n\u001b[1;32m    800\u001b[0m )\n\u001b[1;32m    802\u001b[0m frames \u001b[39m=\u001b[39m []\n\u001b[1;32m    803\u001b[0m skipped \u001b[39m=\u001b[39m \u001b[39m0\u001b[39m\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/IPython/core/ultratb.py:854\u001b[0m, in \u001b[0;36mVerboseTB.get_records\u001b[0;34m(self, etb, number_of_lines_of_context, tb_offset)\u001b[0m\n\u001b[1;32m    848\u001b[0m     formatter \u001b[39m=\u001b[39m \u001b[39mNone\u001b[39;00m\n\u001b[1;32m    849\u001b[0m options \u001b[39m=\u001b[39m stack_data\u001b[39m.\u001b[39mOptions(\n\u001b[1;32m    850\u001b[0m     before\u001b[39m=\u001b[39mbefore,\n\u001b[1;32m    851\u001b[0m     after\u001b[39m=\u001b[39mafter,\n\u001b[1;32m    852\u001b[0m     pygments_formatter\u001b[39m=\u001b[39mformatter,\n\u001b[1;32m    853\u001b[0m )\n\u001b[0;32m--> 854\u001b[0m \u001b[39mreturn\u001b[39;00m \u001b[39mlist\u001b[39;49m(stack_data\u001b[39m.\u001b[39;49mFrameInfo\u001b[39m.\u001b[39;49mstack_data(etb, options\u001b[39m=\u001b[39;49moptions))[tb_offset:]\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/stack_data/core.py:578\u001b[0m, in \u001b[0;36mFrameInfo.stack_data\u001b[0;34m(cls, frame_or_tb, options, collapse_repeated_frames)\u001b[0m\n\u001b[1;32m    562\u001b[0m \u001b[39m@classmethod\u001b[39m\n\u001b[1;32m    563\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mstack_data\u001b[39m(\n\u001b[1;32m    564\u001b[0m         \u001b[39mcls\u001b[39m,\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    568\u001b[0m         collapse_repeated_frames: \u001b[39mbool\u001b[39m \u001b[39m=\u001b[39m \u001b[39mTrue\u001b[39;00m\n\u001b[1;32m    569\u001b[0m ) \u001b[39m-\u001b[39m\u001b[39m>\u001b[39m Iterator[Union[\u001b[39m'\u001b[39m\u001b[39mFrameInfo\u001b[39m\u001b[39m'\u001b[39m, RepeatedFrames]]:\n\u001b[1;32m    570\u001b[0m \u001b[39m    \u001b[39m\u001b[39m\"\"\"\u001b[39;00m\n\u001b[1;32m    571\u001b[0m \u001b[39m    An iterator of FrameInfo and RepeatedFrames objects representing\u001b[39;00m\n\u001b[1;32m    572\u001b[0m \u001b[39m    a full traceback or stack. Similar consecutive frames are collapsed into RepeatedFrames\u001b[39;00m\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    576\u001b[0m \u001b[39m    and optionally an Options object to configure.\u001b[39;00m\n\u001b[1;32m    577\u001b[0m \u001b[39m    \"\"\"\u001b[39;00m\n\u001b[0;32m--> 578\u001b[0m     stack \u001b[39m=\u001b[39m \u001b[39mlist\u001b[39;49m(iter_stack(frame_or_tb))\n\u001b[1;32m    580\u001b[0m     \u001b[39m# Reverse the stack from a frame so that it's in the same order\u001b[39;00m\n\u001b[1;32m    581\u001b[0m     \u001b[39m# as the order from a traceback, which is the order of a printed\u001b[39;00m\n\u001b[1;32m    582\u001b[0m     \u001b[39m# traceback when read top to bottom (most recent call last)\u001b[39;00m\n\u001b[1;32m    583\u001b[0m     \u001b[39mif\u001b[39;00m is_frame(frame_or_tb):\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/stack_data/utils.py:97\u001b[0m, in \u001b[0;36miter_stack\u001b[0;34m(frame_or_tb)\u001b[0m\n\u001b[1;32m     95\u001b[0m \u001b[39mwhile\u001b[39;00m frame_or_tb:\n\u001b[1;32m     96\u001b[0m     \u001b[39myield\u001b[39;00m frame_or_tb\n\u001b[0;32m---> 97\u001b[0m     \u001b[39mif\u001b[39;00m is_frame(frame_or_tb):\n\u001b[1;32m     98\u001b[0m         frame_or_tb \u001b[39m=\u001b[39m frame_or_tb\u001b[39m.\u001b[39mf_back\n\u001b[1;32m     99\u001b[0m     \u001b[39melse\u001b[39;00m:\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/stack_data/utils.py:90\u001b[0m, in \u001b[0;36mis_frame\u001b[0;34m(frame_or_tb)\u001b[0m\n\u001b[1;32m     89\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mis_frame\u001b[39m(frame_or_tb: Union[FrameType, TracebackType]) \u001b[39m-\u001b[39m\u001b[39m>\u001b[39m \u001b[39mbool\u001b[39m:\n\u001b[0;32m---> 90\u001b[0m     assert_(\u001b[39misinstance\u001b[39;49m(frame_or_tb, (types\u001b[39m.\u001b[39;49mFrameType, types\u001b[39m.\u001b[39;49mTracebackType)))\n\u001b[1;32m     91\u001b[0m     \u001b[39mreturn\u001b[39;00m \u001b[39misinstance\u001b[39m(frame_or_tb, (types\u001b[39m.\u001b[39mFrameType,))\n",
      "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/stack_data/utils.py:176\u001b[0m, in \u001b[0;36massert_\u001b[0;34m(condition, error)\u001b[0m\n\u001b[1;32m    174\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39misinstance\u001b[39m(error, \u001b[39mstr\u001b[39m):\n\u001b[1;32m    175\u001b[0m     error \u001b[39m=\u001b[39m \u001b[39mAssertionError\u001b[39;00m(error)\n\u001b[0;32m--> 176\u001b[0m \u001b[39mraise\u001b[39;00m error\n",
      "\u001b[0;31mAssertionError\u001b[0m: "
     ]
    }
   ],
   "source": [
    "class test_utilities(unittest.TestCase):\n",
    "    \n",
    "    def test_edge_to_node(self):\n",
    "        # Test that edge_to_node returns correct node path\n",
    "        n_samples_train = len(train_dataset_e)\n",
    "        d_batch_e, path_batch_e = train_dataset_e[0:n_samples_train]\n",
    "        d_batch_v, path_batch_v = train_dataset_v[0:n_samples_train]\n",
    "\n",
    "        for i in range(n_samples_train):\n",
    "            approx_path_batch = edge_to_node(path_batch_e[i,:], edge_list, grid_size, device='cpu')\n",
    "\n",
    "if __name__ == '__main__':\n",
    "    unittest.main()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Test edge_to_node and node_to_edge"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "i =  0\n",
      "i =  1\n",
      "i =  2\n",
      "i =  3\n",
      "i =  4\n",
      "i =  5\n",
      "i =  6\n",
      "i =  7\n",
      "i =  8\n",
      "i =  9\n",
      "i =  10\n",
      "i =  11\n",
      "i =  12\n",
      "i =  13\n",
      "i =  14\n",
      "i =  15\n",
      "i =  16\n",
      "i =  17\n",
      "i =  18\n",
      "i =  19\n",
      "i =  20\n",
      "i =  21\n",
      "i =  22\n",
      "i =  23\n",
      "i =  24\n",
      "i =  25\n",
      "i =  26\n",
      "i =  27\n",
      "i =  28\n",
      "i =  29\n",
      "i =  30\n",
      "i =  31\n",
      "i =  32\n",
      "i =  33\n",
      "i =  34\n",
      "i =  35\n",
      "i =  36\n",
      "i =  37\n",
      "i =  38\n",
      "i =  39\n",
      "i =  40\n",
      "i =  41\n",
      "i =  42\n",
      "i =  43\n",
      "i =  44\n",
      "i =  45\n",
      "i =  46\n",
      "i =  47\n",
      "i =  48\n",
      "i =  49\n",
      "i =  50\n",
      "i =  51\n",
      "i =  52\n",
      "i =  53\n",
      "i =  54\n",
      "i =  55\n",
      "i =  56\n",
      "i =  57\n",
      "i =  58\n",
      "i =  59\n",
      "i =  60\n",
      "i =  61\n",
      "i =  62\n",
      "i =  63\n",
      "i =  64\n",
      "i =  65\n",
      "i =  66\n",
      "i =  67\n",
      "i =  68\n",
      "i =  69\n",
      "i =  70\n",
      "i =  71\n",
      "i =  72\n",
      "i =  73\n",
      "i =  74\n",
      "i =  75\n",
      "i =  76\n",
      "i =  77\n",
      "i =  78\n",
      "i =  79\n",
      "i =  80\n",
      "i =  81\n",
      "i =  82\n",
      "i =  83\n",
      "i =  84\n",
      "i =  85\n",
      "i =  86\n",
      "i =  87\n",
      "i =  88\n",
      "i =  89\n",
      "i =  90\n",
      "i =  91\n",
      "i =  92\n",
      "i =  93\n",
      "i =  94\n",
      "i =  95\n",
      "i =  96\n",
      "i =  97\n",
      "i =  98\n",
      "i =  99\n",
      "i =  100\n",
      "i =  101\n",
      "i =  102\n",
      "i =  103\n",
      "i =  104\n",
      "i =  105\n",
      "i =  106\n",
      "i =  107\n",
      "i =  108\n",
      "i =  109\n",
      "i =  110\n",
      "i =  111\n",
      "i =  112\n",
      "i =  113\n",
      "i =  114\n",
      "i =  115\n",
      "i =  116\n",
      "i =  117\n",
      "i =  118\n",
      "i =  119\n",
      "i =  120\n",
      "i =  121\n",
      "i =  122\n",
      "i =  123\n",
      "i =  124\n",
      "i =  125\n",
      "i =  126\n",
      "i =  127\n",
      "i =  128\n",
      "i =  129\n",
      "i =  130\n",
      "i =  131\n",
      "i =  132\n",
      "i =  133\n",
      "i =  134\n",
      "i =  135\n",
      "i =  136\n",
      "i =  137\n",
      "i =  138\n",
      "i =  139\n",
      "i =  140\n",
      "i =  141\n",
      "i =  142\n",
      "i =  143\n",
      "i =  144\n",
      "i =  145\n",
      "i =  146\n",
      "i =  147\n",
      "i =  148\n",
      "i =  149\n",
      "i =  150\n",
      "i =  151\n",
      "i =  152\n",
      "i =  153\n",
      "i =  154\n",
      "i =  155\n",
      "i =  156\n",
      "i =  157\n",
      "i =  158\n",
      "i =  159\n",
      "i =  160\n",
      "i =  161\n",
      "i =  162\n",
      "i =  163\n",
      "i =  164\n",
      "i =  165\n",
      "i =  166\n",
      "i =  167\n",
      "i =  168\n",
      "i =  169\n",
      "i =  170\n",
      "i =  171\n",
      "i =  172\n",
      "i =  173\n",
      "i =  174\n",
      "i =  175\n",
      "i =  176\n",
      "i =  177\n",
      "i =  178\n",
      "i =  179\n",
      "i =  180\n",
      "i =  181\n",
      "i =  182\n",
      "i =  183\n",
      "i =  184\n",
      "i =  185\n",
      "i =  186\n",
      "i =  187\n",
      "i =  188\n",
      "i =  189\n",
      "i =  190\n",
      "i =  191\n",
      "i =  192\n",
      "i =  193\n",
      "i =  194\n",
      "i =  195\n",
      "i =  196\n",
      "i =  197\n",
      "i =  198\n",
      "i =  199\n",
      "i =  200\n",
      "i =  201\n",
      "i =  202\n",
      "i =  203\n",
      "i =  204\n",
      "i =  205\n",
      "i =  206\n",
      "i =  207\n",
      "i =  208\n",
      "i =  209\n",
      "i =  210\n",
      "i =  211\n",
      "i =  212\n",
      "i =  213\n",
      "i =  214\n",
      "i =  215\n",
      "i =  216\n",
      "i =  217\n",
      "i =  218\n",
      "i =  219\n",
      "i =  220\n",
      "i =  221\n",
      "i =  222\n",
      "i =  223\n",
      "i =  224\n",
      "i =  225\n",
      "i =  226\n",
      "i =  227\n",
      "i =  228\n",
      "i =  229\n",
      "i =  230\n",
      "i =  231\n",
      "i =  232\n",
      "i =  233\n",
      "i =  234\n",
      "i =  235\n",
      "i =  236\n",
      "i =  237\n",
      "i =  238\n",
      "i =  239\n",
      "i =  240\n",
      "i =  241\n",
      "i =  242\n",
      "i =  243\n",
      "i =  244\n",
      "i =  245\n",
      "i =  246\n",
      "i =  247\n",
      "i =  248\n",
      "i =  249\n",
      "i =  250\n",
      "i =  251\n",
      "i =  252\n",
      "i =  253\n",
      "i =  254\n",
      "i =  255\n",
      "i =  256\n",
      "i =  257\n",
      "i =  258\n",
      "i =  259\n",
      "i =  260\n",
      "i =  261\n",
      "i =  262\n",
      "i =  263\n",
      "i =  264\n",
      "i =  265\n",
      "i =  266\n",
      "i =  267\n",
      "i =  268\n",
      "i =  269\n",
      "i =  270\n",
      "i =  271\n",
      "i =  272\n",
      "i =  273\n",
      "i =  274\n",
      "i =  275\n",
      "i =  276\n",
      "i =  277\n",
      "i =  278\n",
      "i =  279\n",
      "i =  280\n",
      "i =  281\n",
      "i =  282\n",
      "i =  283\n",
      "i =  284\n",
      "i =  285\n",
      "i =  286\n",
      "i =  287\n",
      "i =  288\n",
      "i =  289\n",
      "i =  290\n",
      "i =  291\n",
      "i =  292\n",
      "i =  293\n",
      "i =  294\n",
      "i =  295\n",
      "i =  296\n",
      "i =  297\n",
      "i =  298\n",
      "i =  299\n",
      "i =  300\n",
      "i =  301\n",
      "i =  302\n",
      "i =  303\n",
      "i =  304\n",
      "i =  305\n",
      "i =  306\n",
      "i =  307\n",
      "i =  308\n",
      "i =  309\n",
      "i =  310\n",
      "i =  311\n",
      "i =  312\n",
      "i =  313\n",
      "i =  314\n",
      "i =  315\n",
      "i =  316\n",
      "i =  317\n",
      "i =  318\n",
      "i =  319\n",
      "i =  320\n",
      "i =  321\n",
      "i =  322\n",
      "i =  323\n",
      "i =  324\n",
      "i =  325\n",
      "i =  326\n",
      "i =  327\n",
      "i =  328\n",
      "i =  329\n",
      "i =  330\n",
      "i =  331\n",
      "i =  332\n",
      "i =  333\n",
      "i =  334\n",
      "i =  335\n",
      "i =  336\n",
      "i =  337\n",
      "i =  338\n",
      "i =  339\n",
      "i =  340\n",
      "i =  341\n",
      "i =  342\n",
      "i =  343\n",
      "i =  344\n",
      "i =  345\n",
      "i =  346\n",
      "i =  347\n",
      "i =  348\n",
      "i =  349\n",
      "i =  350\n",
      "i =  351\n",
      "i =  352\n",
      "i =  353\n",
      "i =  354\n",
      "i =  355\n",
      "i =  356\n",
      "i =  357\n",
      "i =  358\n",
      "i =  359\n",
      "i =  360\n",
      "i =  361\n",
      "i =  362\n",
      "i =  363\n",
      "i =  364\n",
      "i =  365\n",
      "i =  366\n",
      "i =  367\n",
      "i =  368\n",
      "i =  369\n",
      "i =  370\n",
      "i =  371\n",
      "i =  372\n",
      "i =  373\n",
      "i =  374\n",
      "i =  375\n",
      "i =  376\n",
      "i =  377\n",
      "i =  378\n",
      "i =  379\n",
      "i =  380\n",
      "i =  381\n",
      "i =  382\n",
      "i =  383\n",
      "i =  384\n",
      "i =  385\n",
      "i =  386\n",
      "i =  387\n",
      "i =  388\n",
      "i =  389\n",
      "i =  390\n",
      "i =  391\n",
      "i =  392\n",
      "i =  393\n",
      "i =  394\n",
      "i =  395\n",
      "i =  396\n",
      "i =  397\n",
      "i =  398\n",
      "i =  399\n",
      "i =  400\n",
      "i =  401\n",
      "i =  402\n",
      "i =  403\n",
      "i =  404\n",
      "i =  405\n",
      "i =  406\n",
      "i =  407\n",
      "i =  408\n",
      "i =  409\n",
      "i =  410\n",
      "i =  411\n",
      "i =  412\n",
      "i =  413\n",
      "i =  414\n",
      "i =  415\n",
      "i =  416\n",
      "i =  417\n",
      "i =  418\n",
      "i =  419\n",
      "i =  420\n",
      "i =  421\n",
      "i =  422\n",
      "i =  423\n",
      "i =  424\n",
      "i =  425\n",
      "i =  426\n",
      "i =  427\n",
      "i =  428\n",
      "i =  429\n",
      "i =  430\n",
      "i =  431\n",
      "i =  432\n",
      "i =  433\n",
      "i =  434\n",
      "i =  435\n",
      "i =  436\n",
      "i =  437\n",
      "i =  438\n",
      "i =  439\n",
      "i =  440\n",
      "i =  441\n",
      "i =  442\n",
      "i =  443\n",
      "i =  444\n",
      "i =  445\n",
      "i =  446\n",
      "i =  447\n",
      "i =  448\n",
      "i =  449\n",
      "i =  450\n",
      "i =  451\n",
      "i =  452\n",
      "i =  453\n",
      "i =  454\n",
      "i =  455\n",
      "i =  456\n",
      "i =  457\n",
      "i =  458\n",
      "i =  459\n",
      "i =  460\n",
      "i =  461\n",
      "i =  462\n",
      "i =  463\n",
      "i =  464\n",
      "i =  465\n",
      "i =  466\n",
      "i =  467\n",
      "i =  468\n",
      "i =  469\n",
      "i =  470\n",
      "i =  471\n",
      "i =  472\n",
      "i =  473\n",
      "i =  474\n",
      "i =  475\n",
      "i =  476\n",
      "i =  477\n",
      "i =  478\n",
      "i =  479\n",
      "i =  480\n",
      "i =  481\n",
      "i =  482\n",
      "i =  483\n",
      "i =  484\n",
      "i =  485\n",
      "i =  486\n",
      "i =  487\n",
      "i =  488\n",
      "i =  489\n",
      "i =  490\n",
      "i =  491\n",
      "i =  492\n",
      "i =  493\n",
      "i =  494\n",
      "i =  495\n",
      "i =  496\n",
      "i =  497\n",
      "i =  498\n",
      "i =  499\n",
      "i =  500\n",
      "i =  501\n",
      "i =  502\n",
      "i =  503\n",
      "i =  504\n",
      "i =  505\n",
      "i =  506\n",
      "i =  507\n",
      "i =  508\n",
      "i =  509\n",
      "i =  510\n",
      "i =  511\n",
      "i =  512\n",
      "i =  513\n",
      "i =  514\n",
      "i =  515\n",
      "i =  516\n",
      "i =  517\n",
      "i =  518\n",
      "i =  519\n",
      "i =  520\n",
      "i =  521\n",
      "i =  522\n",
      "i =  523\n",
      "i =  524\n",
      "i =  525\n",
      "i =  526\n",
      "i =  527\n",
      "i =  528\n",
      "i =  529\n",
      "i =  530\n",
      "i =  531\n",
      "i =  532\n",
      "i =  533\n",
      "i =  534\n",
      "i =  535\n",
      "i =  536\n",
      "i =  537\n",
      "i =  538\n",
      "i =  539\n",
      "i =  540\n",
      "i =  541\n",
      "i =  542\n",
      "i =  543\n",
      "i =  544\n",
      "i =  545\n",
      "i =  546\n",
      "i =  547\n",
      "i =  548\n",
      "i =  549\n",
      "i =  550\n",
      "i =  551\n",
      "i =  552\n",
      "i =  553\n",
      "i =  554\n",
      "i =  555\n",
      "i =  556\n",
      "i =  557\n",
      "i =  558\n",
      "i =  559\n",
      "i =  560\n",
      "i =  561\n",
      "i =  562\n",
      "i =  563\n",
      "i =  564\n",
      "i =  565\n",
      "i =  566\n",
      "i =  567\n",
      "i =  568\n",
      "i =  569\n",
      "i =  570\n",
      "i =  571\n",
      "i =  572\n",
      "i =  573\n",
      "i =  574\n",
      "i =  575\n",
      "i =  576\n",
      "i =  577\n",
      "i =  578\n",
      "i =  579\n",
      "i =  580\n",
      "i =  581\n",
      "i =  582\n",
      "i =  583\n",
      "i =  584\n",
      "i =  585\n",
      "i =  586\n",
      "i =  587\n",
      "i =  588\n",
      "i =  589\n",
      "i =  590\n",
      "i =  591\n",
      "i =  592\n",
      "i =  593\n",
      "i =  594\n",
      "i =  595\n",
      "i =  596\n",
      "i =  597\n",
      "i =  598\n",
      "i =  599\n",
      "i =  600\n",
      "i =  601\n",
      "i =  602\n",
      "i =  603\n",
      "i =  604\n",
      "i =  605\n",
      "i =  606\n",
      "i =  607\n",
      "i =  608\n",
      "i =  609\n",
      "i =  610\n",
      "i =  611\n",
      "i =  612\n",
      "i =  613\n",
      "i =  614\n",
      "i =  615\n",
      "i =  616\n",
      "i =  617\n",
      "i =  618\n",
      "i =  619\n",
      "i =  620\n",
      "i =  621\n",
      "i =  622\n",
      "i =  623\n",
      "i =  624\n",
      "i =  625\n",
      "i =  626\n",
      "i =  627\n",
      "i =  628\n",
      "i =  629\n",
      "i =  630\n",
      "i =  631\n",
      "i =  632\n",
      "i =  633\n",
      "i =  634\n",
      "i =  635\n",
      "i =  636\n",
      "i =  637\n",
      "i =  638\n",
      "i =  639\n",
      "i =  640\n",
      "i =  641\n",
      "i =  642\n",
      "i =  643\n",
      "i =  644\n",
      "i =  645\n",
      "i =  646\n",
      "i =  647\n",
      "i =  648\n",
      "i =  649\n",
      "i =  650\n",
      "i =  651\n",
      "i =  652\n",
      "i =  653\n",
      "i =  654\n",
      "i =  655\n",
      "i =  656\n",
      "i =  657\n",
      "i =  658\n",
      "i =  659\n",
      "i =  660\n",
      "i =  661\n",
      "i =  662\n",
      "i =  663\n",
      "i =  664\n",
      "i =  665\n",
      "i =  666\n",
      "i =  667\n",
      "i =  668\n",
      "i =  669\n",
      "i =  670\n",
      "i =  671\n",
      "i =  672\n",
      "i =  673\n",
      "i =  674\n",
      "i =  675\n",
      "i =  676\n",
      "i =  677\n",
      "i =  678\n",
      "i =  679\n",
      "i =  680\n",
      "i =  681\n",
      "i =  682\n",
      "i =  683\n",
      "i =  684\n",
      "i =  685\n",
      "i =  686\n",
      "i =  687\n",
      "i =  688\n",
      "i =  689\n",
      "i =  690\n",
      "i =  691\n",
      "i =  692\n",
      "i =  693\n",
      "i =  694\n",
      "i =  695\n",
      "i =  696\n",
      "i =  697\n",
      "i =  698\n",
      "i =  699\n",
      "i =  700\n",
      "i =  701\n",
      "i =  702\n",
      "i =  703\n",
      "i =  704\n",
      "i =  705\n",
      "i =  706\n",
      "i =  707\n",
      "i =  708\n",
      "i =  709\n",
      "i =  710\n",
      "i =  711\n",
      "i =  712\n",
      "i =  713\n",
      "i =  714\n",
      "i =  715\n",
      "i =  716\n",
      "i =  717\n",
      "i =  718\n",
      "i =  719\n",
      "i =  720\n",
      "i =  721\n",
      "i =  722\n",
      "i =  723\n",
      "i =  724\n",
      "i =  725\n",
      "i =  726\n",
      "i =  727\n",
      "i =  728\n",
      "i =  729\n",
      "i =  730\n",
      "i =  731\n",
      "i =  732\n",
      "i =  733\n",
      "i =  734\n",
      "i =  735\n",
      "i =  736\n",
      "i =  737\n",
      "i =  738\n",
      "i =  739\n",
      "i =  740\n",
      "i =  741\n",
      "i =  742\n",
      "i =  743\n",
      "i =  744\n",
      "i =  745\n",
      "i =  746\n",
      "i =  747\n",
      "i =  748\n",
      "i =  749\n",
      "i =  750\n",
      "i =  751\n",
      "i =  752\n",
      "i =  753\n",
      "i =  754\n",
      "i =  755\n",
      "i =  756\n",
      "i =  757\n",
      "i =  758\n",
      "i =  759\n",
      "i =  760\n",
      "i =  761\n",
      "i =  762\n",
      "i =  763\n",
      "i =  764\n",
      "i =  765\n",
      "i =  766\n",
      "i =  767\n",
      "i =  768\n",
      "i =  769\n",
      "i =  770\n",
      "i =  771\n",
      "i =  772\n",
      "i =  773\n",
      "i =  774\n",
      "i =  775\n",
      "i =  776\n",
      "i =  777\n",
      "i =  778\n",
      "i =  779\n",
      "i =  780\n",
      "i =  781\n",
      "i =  782\n",
      "i =  783\n",
      "i =  784\n",
      "i =  785\n",
      "i =  786\n",
      "i =  787\n",
      "i =  788\n",
      "i =  789\n",
      "i =  790\n",
      "i =  791\n",
      "i =  792\n",
      "i =  793\n",
      "i =  794\n",
      "i =  795\n",
      "i =  796\n",
      "i =  797\n",
      "i =  798\n",
      "i =  799\n",
      "i =  800\n",
      "i =  801\n",
      "i =  802\n",
      "i =  803\n",
      "i =  804\n",
      "i =  805\n",
      "i =  806\n",
      "i =  807\n",
      "i =  808\n",
      "i =  809\n",
      "i =  810\n",
      "i =  811\n",
      "i =  812\n",
      "i =  813\n",
      "i =  814\n",
      "i =  815\n",
      "i =  816\n",
      "i =  817\n",
      "i =  818\n",
      "i =  819\n",
      "i =  820\n",
      "i =  821\n",
      "i =  822\n",
      "i =  823\n",
      "i =  824\n",
      "i =  825\n",
      "i =  826\n",
      "i =  827\n",
      "i =  828\n",
      "i =  829\n",
      "i =  830\n",
      "i =  831\n",
      "i =  832\n",
      "i =  833\n",
      "i =  834\n",
      "i =  835\n",
      "i =  836\n",
      "i =  837\n",
      "i =  838\n",
      "i =  839\n",
      "i =  840\n",
      "i =  841\n",
      "i =  842\n",
      "i =  843\n",
      "i =  844\n",
      "i =  845\n",
      "i =  846\n",
      "i =  847\n",
      "i =  848\n",
      "i =  849\n",
      "i =  850\n",
      "i =  851\n",
      "i =  852\n",
      "i =  853\n",
      "i =  854\n",
      "i =  855\n",
      "i =  856\n",
      "i =  857\n",
      "i =  858\n",
      "i =  859\n",
      "i =  860\n",
      "i =  861\n",
      "i =  862\n",
      "i =  863\n",
      "i =  864\n",
      "i =  865\n",
      "i =  866\n",
      "i =  867\n",
      "i =  868\n",
      "i =  869\n",
      "i =  870\n",
      "i =  871\n",
      "i =  872\n",
      "i =  873\n",
      "i =  874\n",
      "i =  875\n",
      "i =  876\n",
      "i =  877\n",
      "i =  878\n",
      "i =  879\n",
      "i =  880\n",
      "i =  881\n",
      "i =  882\n",
      "i =  883\n",
      "i =  884\n",
      "i =  885\n",
      "i =  886\n",
      "i =  887\n",
      "i =  888\n",
      "i =  889\n",
      "i =  890\n",
      "i =  891\n",
      "i =  892\n",
      "i =  893\n",
      "i =  894\n",
      "i =  895\n",
      "i =  896\n",
      "i =  897\n",
      "i =  898\n",
      "i =  899\n",
      "i =  900\n",
      "i =  901\n",
      "i =  902\n",
      "i =  903\n",
      "i =  904\n",
      "i =  905\n",
      "i =  906\n",
      "i =  907\n",
      "i =  908\n",
      "i =  909\n",
      "i =  910\n",
      "i =  911\n",
      "i =  912\n",
      "i =  913\n",
      "i =  914\n",
      "i =  915\n",
      "i =  916\n",
      "i =  917\n",
      "i =  918\n",
      "i =  919\n",
      "i =  920\n",
      "i =  921\n",
      "i =  922\n",
      "i =  923\n",
      "i =  924\n",
      "i =  925\n",
      "i =  926\n",
      "i =  927\n",
      "i =  928\n",
      "i =  929\n",
      "i =  930\n",
      "i =  931\n",
      "i =  932\n",
      "i =  933\n",
      "i =  934\n",
      "i =  935\n",
      "i =  936\n",
      "i =  937\n",
      "i =  938\n",
      "i =  939\n",
      "i =  940\n",
      "i =  941\n",
      "i =  942\n",
      "i =  943\n",
      "i =  944\n",
      "i =  945\n",
      "i =  946\n",
      "i =  947\n",
      "i =  948\n",
      "i =  949\n",
      "i =  950\n",
      "i =  951\n",
      "i =  952\n",
      "i =  953\n",
      "i =  954\n",
      "i =  955\n",
      "i =  956\n",
      "i =  957\n",
      "i =  958\n",
      "i =  959\n",
      "i =  960\n",
      "i =  961\n",
      "i =  962\n",
      "i =  963\n",
      "i =  964\n",
      "i =  965\n",
      "i =  966\n",
      "i =  967\n",
      "i =  968\n",
      "i =  969\n",
      "i =  970\n",
      "i =  971\n",
      "i =  972\n",
      "i =  973\n",
      "i =  974\n",
      "i =  975\n",
      "i =  976\n",
      "i =  977\n",
      "i =  978\n",
      "i =  979\n",
      "i =  980\n",
      "i =  981\n",
      "i =  982\n",
      "i =  983\n",
      "i =  984\n",
      "i =  985\n",
      "i =  986\n",
      "i =  987\n",
      "i =  988\n",
      "i =  989\n",
      "i =  990\n",
      "i =  991\n",
      "i =  992\n",
      "i =  993\n",
      "i =  994\n",
      "i =  995\n",
      "i =  996\n",
      "i =  997\n",
      "i =  998\n",
      "i =  999\n",
      "i =  1000\n",
      "i =  1001\n",
      "i =  1002\n",
      "i =  1003\n",
      "i =  1004\n",
      "i =  1005\n",
      "i =  1006\n",
      "i =  1007\n",
      "i =  1008\n",
      "i =  1009\n",
      "i =  1010\n",
      "i =  1011\n",
      "i =  1012\n",
      "i =  1013\n",
      "i =  1014\n",
      "i =  1015\n",
      "i =  1016\n",
      "i =  1017\n",
      "i =  1018\n",
      "i =  1019\n",
      "i =  1020\n",
      "i =  1021\n",
      "i =  1022\n",
      "i =  1023\n",
      "i =  1024\n",
      "i =  1025\n",
      "i =  1026\n",
      "i =  1027\n",
      "i =  1028\n",
      "i =  1029\n",
      "i =  1030\n",
      "i =  1031\n",
      "i =  1032\n",
      "i =  1033\n",
      "i =  1034\n",
      "i =  1035\n",
      "i =  1036\n",
      "i =  1037\n",
      "i =  1038\n",
      "i =  1039\n",
      "i =  1040\n",
      "i =  1041\n",
      "i =  1042\n",
      "i =  1043\n",
      "i =  1044\n",
      "i =  1045\n",
      "i =  1046\n",
      "i =  1047\n",
      "i =  1048\n",
      "i =  1049\n",
      "i =  1050\n",
      "i =  1051\n",
      "i =  1052\n",
      "i =  1053\n",
      "i =  1054\n",
      "i =  1055\n",
      "i =  1056\n",
      "i =  1057\n",
      "i =  1058\n",
      "i =  1059\n",
      "i =  1060\n",
      "i =  1061\n",
      "i =  1062\n",
      "i =  1063\n",
      "i =  1064\n",
      "i =  1065\n",
      "i =  1066\n",
      "i =  1067\n",
      "i =  1068\n",
      "i =  1069\n",
      "i =  1070\n",
      "i =  1071\n",
      "i =  1072\n",
      "i =  1073\n",
      "i =  1074\n",
      "i =  1075\n",
      "i =  1076\n",
      "i =  1077\n",
      "i =  1078\n",
      "i =  1079\n",
      "i =  1080\n",
      "i =  1081\n",
      "i =  1082\n",
      "i =  1083\n",
      "i =  1084\n",
      "i =  1085\n",
      "i =  1086\n",
      "i =  1087\n",
      "i =  1088\n",
      "i =  1089\n",
      "i =  1090\n",
      "i =  1091\n",
      "i =  1092\n",
      "i =  1093\n",
      "i =  1094\n",
      "i =  1095\n",
      "i =  1096\n",
      "i =  1097\n",
      "i =  1098\n",
      "i =  1099\n",
      "i =  1100\n",
      "i =  1101\n",
      "i =  1102\n",
      "i =  1103\n",
      "i =  1104\n",
      "i =  1105\n",
      "i =  1106\n",
      "i =  1107\n",
      "i =  1108\n",
      "i =  1109\n",
      "i =  1110\n",
      "i =  1111\n",
      "i =  1112\n",
      "i =  1113\n",
      "i =  1114\n",
      "i =  1115\n",
      "i =  1116\n",
      "i =  1117\n",
      "i =  1118\n",
      "i =  1119\n",
      "i =  1120\n",
      "i =  1121\n",
      "i =  1122\n",
      "i =  1123\n",
      "i =  1124\n",
      "i =  1125\n",
      "i =  1126\n",
      "i =  1127\n",
      "i =  1128\n",
      "i =  1129\n",
      "i =  1130\n",
      "i =  1131\n",
      "i =  1132\n",
      "i =  1133\n",
      "i =  1134\n",
      "i =  1135\n",
      "i =  1136\n",
      "i =  1137\n",
      "i =  1138\n",
      "i =  1139\n",
      "i =  1140\n",
      "i =  1141\n",
      "i =  1142\n",
      "i =  1143\n",
      "i =  1144\n",
      "i =  1145\n",
      "i =  1146\n",
      "i =  1147\n",
      "i =  1148\n",
      "i =  1149\n",
      "i =  1150\n",
      "i =  1151\n",
      "i =  1152\n",
      "i =  1153\n",
      "i =  1154\n",
      "i =  1155\n",
      "i =  1156\n",
      "i =  1157\n",
      "i =  1158\n",
      "i =  1159\n",
      "i =  1160\n",
      "i =  1161\n",
      "i =  1162\n",
      "i =  1163\n",
      "i =  1164\n",
      "i =  1165\n",
      "i =  1166\n",
      "i =  1167\n",
      "i =  1168\n",
      "i =  1169\n",
      "i =  1170\n",
      "i =  1171\n",
      "i =  1172\n",
      "i =  1173\n",
      "i =  1174\n",
      "i =  1175\n",
      "i =  1176\n",
      "i =  1177\n",
      "i =  1178\n",
      "i =  1179\n",
      "i =  1180\n",
      "i =  1181\n",
      "i =  1182\n",
      "i =  1183\n",
      "i =  1184\n",
      "i =  1185\n",
      "i =  1186\n",
      "i =  1187\n",
      "i =  1188\n",
      "i =  1189\n",
      "i =  1190\n",
      "i =  1191\n",
      "i =  1192\n",
      "i =  1193\n",
      "i =  1194\n",
      "i =  1195\n",
      "i =  1196\n",
      "i =  1197\n",
      "i =  1198\n",
      "i =  1199\n",
      "i =  1200\n",
      "i =  1201\n",
      "i =  1202\n",
      "i =  1203\n",
      "i =  1204\n",
      "i =  1205\n",
      "i =  1206\n",
      "i =  1207\n",
      "i =  1208\n",
      "i =  1209\n",
      "i =  1210\n",
      "i =  1211\n",
      "i =  1212\n",
      "i =  1213\n",
      "i =  1214\n",
      "i =  1215\n",
      "i =  1216\n",
      "i =  1217\n",
      "i =  1218\n",
      "i =  1219\n",
      "i =  1220\n",
      "i =  1221\n",
      "i =  1222\n",
      "i =  1223\n",
      "i =  1224\n",
      "i =  1225\n",
      "i =  1226\n",
      "i =  1227\n",
      "i =  1228\n",
      "i =  1229\n",
      "i =  1230\n",
      "i =  1231\n",
      "i =  1232\n",
      "i =  1233\n",
      "i =  1234\n",
      "i =  1235\n",
      "i =  1236\n",
      "i =  1237\n",
      "i =  1238\n",
      "i =  1239\n",
      "i =  1240\n",
      "i =  1241\n",
      "i =  1242\n",
      "i =  1243\n",
      "i =  1244\n",
      "i =  1245\n",
      "i =  1246\n",
      "i =  1247\n",
      "i =  1248\n",
      "i =  1249\n",
      "i =  1250\n",
      "i =  1251\n",
      "i =  1252\n",
      "i =  1253\n",
      "i =  1254\n",
      "i =  1255\n",
      "i =  1256\n",
      "i =  1257\n",
      "i =  1258\n",
      "i =  1259\n",
      "i =  1260\n",
      "i =  1261\n",
      "i =  1262\n",
      "i =  1263\n",
      "i =  1264\n",
      "i =  1265\n",
      "i =  1266\n",
      "i =  1267\n",
      "i =  1268\n",
      "i =  1269\n",
      "i =  1270\n",
      "i =  1271\n",
      "i =  1272\n",
      "i =  1273\n",
      "i =  1274\n",
      "i =  1275\n",
      "i =  1276\n",
      "i =  1277\n",
      "i =  1278\n",
      "i =  1279\n",
      "i =  1280\n",
      "i =  1281\n",
      "i =  1282\n",
      "i =  1283\n",
      "i =  1284\n",
      "i =  1285\n",
      "i =  1286\n",
      "i =  1287\n",
      "i =  1288\n",
      "i =  1289\n",
      "i =  1290\n",
      "i =  1291\n",
      "i =  1292\n",
      "i =  1293\n",
      "i =  1294\n",
      "i =  1295\n",
      "i =  1296\n",
      "i =  1297\n",
      "i =  1298\n",
      "i =  1299\n",
      "i =  1300\n",
      "i =  1301\n",
      "i =  1302\n",
      "i =  1303\n",
      "i =  1304\n",
      "i =  1305\n",
      "i =  1306\n",
      "i =  1307\n",
      "i =  1308\n",
      "i =  1309\n",
      "i =  1310\n",
      "i =  1311\n",
      "i =  1312\n",
      "i =  1313\n",
      "i =  1314\n",
      "i =  1315\n",
      "i =  1316\n",
      "i =  1317\n",
      "i =  1318\n",
      "i =  1319\n",
      "i =  1320\n",
      "i =  1321\n",
      "i =  1322\n",
      "i =  1323\n",
      "i =  1324\n",
      "i =  1325\n",
      "i =  1326\n",
      "i =  1327\n",
      "i =  1328\n",
      "i =  1329\n",
      "i =  1330\n",
      "i =  1331\n",
      "i =  1332\n",
      "i =  1333\n",
      "i =  1334\n",
      "i =  1335\n",
      "i =  1336\n",
      "i =  1337\n",
      "i =  1338\n",
      "i =  1339\n",
      "i =  1340\n",
      "i =  1341\n",
      "i =  1342\n",
      "i =  1343\n",
      "i =  1344\n",
      "i =  1345\n",
      "i =  1346\n",
      "i =  1347\n",
      "i =  1348\n",
      "i =  1349\n",
      "i =  1350\n",
      "i =  1351\n",
      "i =  1352\n",
      "i =  1353\n",
      "i =  1354\n",
      "i =  1355\n",
      "i =  1356\n",
      "i =  1357\n",
      "i =  1358\n",
      "i =  1359\n",
      "i =  1360\n",
      "i =  1361\n",
      "i =  1362\n",
      "i =  1363\n",
      "i =  1364\n",
      "i =  1365\n",
      "i =  1366\n",
      "i =  1367\n",
      "i =  1368\n",
      "i =  1369\n",
      "i =  1370\n",
      "i =  1371\n",
      "i =  1372\n",
      "i =  1373\n",
      "i =  1374\n",
      "i =  1375\n",
      "i =  1376\n",
      "i =  1377\n",
      "i =  1378\n",
      "i =  1379\n",
      "i =  1380\n",
      "i =  1381\n",
      "i =  1382\n",
      "i =  1383\n",
      "i =  1384\n",
      "i =  1385\n",
      "i =  1386\n",
      "i =  1387\n",
      "i =  1388\n",
      "i =  1389\n",
      "i =  1390\n",
      "i =  1391\n",
      "i =  1392\n",
      "i =  1393\n",
      "i =  1394\n",
      "i =  1395\n",
      "i =  1396\n",
      "i =  1397\n",
      "i =  1398\n",
      "i =  1399\n",
      "i =  1400\n",
      "i =  1401\n",
      "i =  1402\n",
      "i =  1403\n",
      "i =  1404\n",
      "i =  1405\n",
      "i =  1406\n",
      "i =  1407\n",
      "i =  1408\n",
      "i =  1409\n",
      "i =  1410\n",
      "i =  1411\n",
      "i =  1412\n",
      "i =  1413\n",
      "i =  1414\n",
      "i =  1415\n",
      "i =  1416\n",
      "i =  1417\n",
      "i =  1418\n",
      "i =  1419\n",
      "i =  1420\n",
      "i =  1421\n",
      "i =  1422\n",
      "i =  1423\n",
      "i =  1424\n",
      "i =  1425\n",
      "i =  1426\n",
      "i =  1427\n",
      "i =  1428\n",
      "i =  1429\n",
      "i =  1430\n",
      "i =  1431\n",
      "i =  1432\n",
      "i =  1433\n",
      "i =  1434\n",
      "i =  1435\n",
      "i =  1436\n",
      "i =  1437\n",
      "i =  1438\n",
      "i =  1439\n",
      "i =  1440\n",
      "i =  1441\n",
      "i =  1442\n",
      "i =  1443\n",
      "i =  1444\n",
      "i =  1445\n",
      "i =  1446\n",
      "i =  1447\n",
      "i =  1448\n",
      "i =  1449\n",
      "i =  1450\n",
      "i =  1451\n",
      "i =  1452\n",
      "i =  1453\n",
      "i =  1454\n",
      "i =  1455\n",
      "i =  1456\n",
      "i =  1457\n",
      "i =  1458\n",
      "i =  1459\n",
      "i =  1460\n",
      "i =  1461\n",
      "i =  1462\n",
      "i =  1463\n",
      "i =  1464\n",
      "i =  1465\n",
      "i =  1466\n",
      "i =  1467\n",
      "i =  1468\n",
      "i =  1469\n",
      "i =  1470\n",
      "i =  1471\n",
      "i =  1472\n",
      "i =  1473\n",
      "i =  1474\n",
      "i =  1475\n",
      "i =  1476\n",
      "i =  1477\n",
      "i =  1478\n",
      "i =  1479\n",
      "i =  1480\n",
      "i =  1481\n",
      "i =  1482\n",
      "i =  1483\n",
      "i =  1484\n",
      "i =  1485\n",
      "i =  1486\n",
      "i =  1487\n",
      "i =  1488\n",
      "i =  1489\n",
      "i =  1490\n",
      "i =  1491\n",
      "i =  1492\n",
      "i =  1493\n",
      "i =  1494\n",
      "i =  1495\n",
      "i =  1496\n",
      "i =  1497\n",
      "i =  1498\n",
      "i =  1499\n",
      "i =  1500\n",
      "i =  1501\n",
      "i =  1502\n",
      "i =  1503\n",
      "i =  1504\n",
      "i =  1505\n",
      "i =  1506\n",
      "i =  1507\n",
      "i =  1508\n",
      "i =  1509\n",
      "i =  1510\n",
      "i =  1511\n",
      "i =  1512\n",
      "i =  1513\n",
      "i =  1514\n",
      "i =  1515\n",
      "i =  1516\n",
      "i =  1517\n",
      "i =  1518\n",
      "i =  1519\n",
      "i =  1520\n",
      "i =  1521\n",
      "i =  1522\n",
      "i =  1523\n",
      "i =  1524\n",
      "i =  1525\n",
      "i =  1526\n",
      "i =  1527\n",
      "i =  1528\n",
      "i =  1529\n",
      "i =  1530\n",
      "i =  1531\n",
      "i =  1532\n",
      "i =  1533\n",
      "i =  1534\n",
      "i =  1535\n",
      "i =  1536\n",
      "i =  1537\n",
      "i =  1538\n",
      "i =  1539\n",
      "i =  1540\n",
      "i =  1541\n",
      "i =  1542\n",
      "i =  1543\n",
      "i =  1544\n",
      "i =  1545\n",
      "i =  1546\n",
      "i =  1547\n",
      "i =  1548\n",
      "i =  1549\n",
      "i =  1550\n",
      "i =  1551\n",
      "i =  1552\n",
      "i =  1553\n",
      "i =  1554\n",
      "i =  1555\n",
      "i =  1556\n",
      "i =  1557\n",
      "i =  1558\n",
      "i =  1559\n",
      "i =  1560\n",
      "i =  1561\n",
      "i =  1562\n",
      "i =  1563\n",
      "i =  1564\n",
      "i =  1565\n",
      "i =  1566\n",
      "i =  1567\n",
      "i =  1568\n",
      "i =  1569\n",
      "i =  1570\n",
      "i =  1571\n",
      "i =  1572\n",
      "i =  1573\n",
      "i =  1574\n",
      "i =  1575\n",
      "i =  1576\n",
      "i =  1577\n",
      "i =  1578\n",
      "i =  1579\n",
      "i =  1580\n",
      "i =  1581\n",
      "i =  1582\n",
      "i =  1583\n",
      "i =  1584\n",
      "i =  1585\n",
      "i =  1586\n",
      "i =  1587\n",
      "i =  1588\n",
      "i =  1589\n",
      "i =  1590\n",
      "i =  1591\n",
      "i =  1592\n",
      "i =  1593\n",
      "i =  1594\n",
      "i =  1595\n",
      "i =  1596\n",
      "i =  1597\n",
      "i =  1598\n",
      "i =  1599\n",
      "i =  1600\n",
      "i =  1601\n",
      "i =  1602\n",
      "i =  1603\n",
      "i =  1604\n",
      "i =  1605\n",
      "i =  1606\n",
      "i =  1607\n",
      "i =  1608\n",
      "i =  1609\n",
      "i =  1610\n",
      "i =  1611\n",
      "i =  1612\n",
      "i =  1613\n",
      "i =  1614\n",
      "i =  1615\n",
      "i =  1616\n",
      "i =  1617\n",
      "i =  1618\n",
      "i =  1619\n",
      "i =  1620\n",
      "i =  1621\n",
      "i =  1622\n",
      "i =  1623\n",
      "i =  1624\n",
      "i =  1625\n",
      "i =  1626\n",
      "i =  1627\n",
      "i =  1628\n",
      "i =  1629\n",
      "i =  1630\n",
      "i =  1631\n",
      "i =  1632\n",
      "i =  1633\n",
      "i =  1634\n",
      "i =  1635\n",
      "i =  1636\n",
      "i =  1637\n",
      "i =  1638\n",
      "i =  1639\n",
      "i =  1640\n",
      "i =  1641\n",
      "i =  1642\n",
      "i =  1643\n",
      "i =  1644\n",
      "i =  1645\n",
      "i =  1646\n",
      "i =  1647\n",
      "i =  1648\n",
      "i =  1649\n",
      "i =  1650\n",
      "i =  1651\n",
      "i =  1652\n",
      "i =  1653\n",
      "i =  1654\n",
      "i =  1655\n",
      "i =  1656\n",
      "i =  1657\n",
      "i =  1658\n",
      "i =  1659\n",
      "i =  1660\n",
      "i =  1661\n",
      "i =  1662\n",
      "i =  1663\n",
      "i =  1664\n",
      "i =  1665\n",
      "i =  1666\n",
      "i =  1667\n",
      "i =  1668\n",
      "i =  1669\n",
      "i =  1670\n",
      "i =  1671\n",
      "i =  1672\n",
      "i =  1673\n",
      "i =  1674\n",
      "i =  1675\n",
      "i =  1676\n",
      "i =  1677\n",
      "i =  1678\n",
      "i =  1679\n",
      "i =  1680\n",
      "i =  1681\n",
      "i =  1682\n",
      "i =  1683\n",
      "i =  1684\n",
      "i =  1685\n",
      "i =  1686\n",
      "i =  1687\n",
      "i =  1688\n",
      "i =  1689\n",
      "i =  1690\n",
      "i =  1691\n",
      "i =  1692\n",
      "i =  1693\n",
      "i =  1694\n",
      "i =  1695\n",
      "i =  1696\n",
      "i =  1697\n",
      "i =  1698\n",
      "i =  1699\n",
      "i =  1700\n",
      "i =  1701\n",
      "i =  1702\n",
      "i =  1703\n",
      "i =  1704\n",
      "i =  1705\n",
      "i =  1706\n",
      "i =  1707\n",
      "i =  1708\n",
      "i =  1709\n",
      "i =  1710\n",
      "i =  1711\n",
      "i =  1712\n",
      "i =  1713\n",
      "i =  1714\n",
      "i =  1715\n",
      "i =  1716\n",
      "i =  1717\n",
      "i =  1718\n",
      "i =  1719\n",
      "i =  1720\n",
      "i =  1721\n",
      "i =  1722\n",
      "i =  1723\n",
      "i =  1724\n",
      "i =  1725\n",
      "i =  1726\n",
      "i =  1727\n",
      "i =  1728\n",
      "i =  1729\n",
      "i =  1730\n",
      "i =  1731\n",
      "i =  1732\n",
      "i =  1733\n",
      "i =  1734\n",
      "i =  1735\n",
      "i =  1736\n",
      "i =  1737\n",
      "i =  1738\n",
      "i =  1739\n",
      "i =  1740\n",
      "i =  1741\n",
      "i =  1742\n",
      "i =  1743\n",
      "i =  1744\n",
      "i =  1745\n",
      "i =  1746\n",
      "i =  1747\n",
      "i =  1748\n",
      "i =  1749\n",
      "i =  1750\n",
      "i =  1751\n",
      "i =  1752\n",
      "i =  1753\n",
      "i =  1754\n",
      "i =  1755\n",
      "i =  1756\n",
      "i =  1757\n",
      "i =  1758\n",
      "i =  1759\n",
      "i =  1760\n",
      "i =  1761\n",
      "i =  1762\n",
      "i =  1763\n",
      "i =  1764\n",
      "i =  1765\n",
      "i =  1766\n",
      "i =  1767\n",
      "i =  1768\n",
      "i =  1769\n",
      "i =  1770\n",
      "i =  1771\n",
      "i =  1772\n",
      "i =  1773\n",
      "i =  1774\n",
      "i =  1775\n",
      "i =  1776\n",
      "i =  1777\n",
      "i =  1778\n",
      "i =  1779\n",
      "i =  1780\n",
      "i =  1781\n",
      "i =  1782\n",
      "i =  1783\n",
      "i =  1784\n",
      "i =  1785\n",
      "i =  1786\n",
      "i =  1787\n",
      "i =  1788\n",
      "i =  1789\n",
      "i =  1790\n",
      "i =  1791\n",
      "i =  1792\n",
      "i =  1793\n",
      "i =  1794\n",
      "i =  1795\n",
      "i =  1796\n",
      "i =  1797\n",
      "i =  1798\n",
      "i =  1799\n",
      "i =  1800\n",
      "i =  1801\n",
      "i =  1802\n",
      "i =  1803\n",
      "i =  1804\n",
      "i =  1805\n",
      "i =  1806\n",
      "i =  1807\n",
      "i =  1808\n",
      "i =  1809\n",
      "i =  1810\n",
      "i =  1811\n",
      "i =  1812\n",
      "i =  1813\n",
      "i =  1814\n",
      "i =  1815\n",
      "i =  1816\n",
      "i =  1817\n",
      "i =  1818\n",
      "i =  1819\n",
      "i =  1820\n",
      "i =  1821\n",
      "i =  1822\n",
      "i =  1823\n",
      "i =  1824\n",
      "i =  1825\n",
      "i =  1826\n",
      "i =  1827\n",
      "i =  1828\n",
      "i =  1829\n",
      "i =  1830\n",
      "i =  1831\n",
      "i =  1832\n",
      "i =  1833\n",
      "i =  1834\n",
      "i =  1835\n",
      "i =  1836\n",
      "i =  1837\n",
      "i =  1838\n",
      "i =  1839\n",
      "i =  1840\n",
      "i =  1841\n",
      "i =  1842\n",
      "i =  1843\n",
      "i =  1844\n",
      "i =  1845\n",
      "i =  1846\n",
      "i =  1847\n",
      "i =  1848\n",
      "i =  1849\n",
      "i =  1850\n",
      "i =  1851\n",
      "i =  1852\n",
      "i =  1853\n",
      "i =  1854\n",
      "i =  1855\n",
      "i =  1856\n",
      "i =  1857\n",
      "i =  1858\n",
      "i =  1859\n",
      "i =  1860\n",
      "i =  1861\n",
      "i =  1862\n",
      "i =  1863\n",
      "i =  1864\n",
      "i =  1865\n",
      "i =  1866\n",
      "i =  1867\n",
      "i =  1868\n",
      "i =  1869\n",
      "i =  1870\n",
      "i =  1871\n",
      "i =  1872\n",
      "i =  1873\n",
      "i =  1874\n",
      "i =  1875\n",
      "i =  1876\n",
      "i =  1877\n",
      "i =  1878\n",
      "i =  1879\n",
      "i =  1880\n",
      "i =  1881\n",
      "i =  1882\n",
      "i =  1883\n",
      "i =  1884\n",
      "i =  1885\n",
      "i =  1886\n",
      "i =  1887\n",
      "i =  1888\n",
      "i =  1889\n",
      "i =  1890\n",
      "i =  1891\n",
      "i =  1892\n",
      "i =  1893\n",
      "i =  1894\n",
      "i =  1895\n",
      "i =  1896\n",
      "i =  1897\n",
      "i =  1898\n",
      "i =  1899\n",
      "i =  1900\n",
      "i =  1901\n",
      "i =  1902\n",
      "i =  1903\n",
      "i =  1904\n",
      "i =  1905\n",
      "i =  1906\n",
      "i =  1907\n",
      "i =  1908\n",
      "i =  1909\n",
      "i =  1910\n",
      "i =  1911\n",
      "i =  1912\n",
      "i =  1913\n",
      "i =  1914\n",
      "i =  1915\n",
      "i =  1916\n",
      "i =  1917\n",
      "i =  1918\n",
      "i =  1919\n",
      "i =  1920\n",
      "i =  1921\n",
      "i =  1922\n",
      "i =  1923\n",
      "i =  1924\n",
      "i =  1925\n",
      "i =  1926\n",
      "i =  1927\n",
      "i =  1928\n",
      "i =  1929\n",
      "i =  1930\n",
      "i =  1931\n",
      "i =  1932\n",
      "i =  1933\n",
      "i =  1934\n",
      "i =  1935\n",
      "i =  1936\n",
      "i =  1937\n",
      "i =  1938\n",
      "i =  1939\n",
      "i =  1940\n",
      "i =  1941\n",
      "i =  1942\n",
      "i =  1943\n",
      "i =  1944\n",
      "i =  1945\n",
      "i =  1946\n",
      "i =  1947\n",
      "i =  1948\n",
      "i =  1949\n",
      "i =  1950\n",
      "i =  1951\n",
      "i =  1952\n",
      "i =  1953\n",
      "i =  1954\n",
      "i =  1955\n",
      "i =  1956\n",
      "i =  1957\n",
      "i =  1958\n",
      "i =  1959\n",
      "i =  1960\n",
      "i =  1961\n",
      "i =  1962\n",
      "i =  1963\n",
      "i =  1964\n",
      "i =  1965\n",
      "i =  1966\n",
      "i =  1967\n",
      "i =  1968\n",
      "i =  1969\n",
      "i =  1970\n",
      "i =  1971\n",
      "i =  1972\n",
      "i =  1973\n",
      "i =  1974\n",
      "i =  1975\n",
      "i =  1976\n",
      "i =  1977\n",
      "i =  1978\n",
      "i =  1979\n",
      "i =  1980\n",
      "i =  1981\n",
      "i =  1982\n",
      "i =  1983\n",
      "i =  1984\n",
      "i =  1985\n",
      "i =  1986\n",
      "i =  1987\n",
      "i =  1988\n",
      "i =  1989\n",
      "i =  1990\n",
      "i =  1991\n",
      "i =  1992\n",
      "i =  1993\n",
      "i =  1994\n",
      "i =  1995\n",
      "i =  1996\n",
      "i =  1997\n",
      "i =  1998\n",
      "i =  1999\n",
      "i =  2000\n",
      "i =  2001\n",
      "i =  2002\n",
      "i =  2003\n",
      "i =  2004\n",
      "i =  2005\n",
      "i =  2006\n",
      "i =  2007\n",
      "i =  2008\n",
      "i =  2009\n",
      "i =  2010\n",
      "i =  2011\n",
      "i =  2012\n",
      "i =  2013\n",
      "i =  2014\n",
      "i =  2015\n",
      "i =  2016\n",
      "i =  2017\n",
      "i =  2018\n",
      "i =  2019\n",
      "i =  2020\n",
      "i =  2021\n",
      "i =  2022\n",
      "i =  2023\n",
      "i =  2024\n",
      "i =  2025\n",
      "i =  2026\n",
      "i =  2027\n",
      "i =  2028\n",
      "i =  2029\n",
      "i =  2030\n",
      "i =  2031\n",
      "i =  2032\n",
      "i =  2033\n",
      "i =  2034\n",
      "i =  2035\n",
      "i =  2036\n",
      "i =  2037\n",
      "i =  2038\n",
      "i =  2039\n",
      "i =  2040\n",
      "i =  2041\n",
      "i =  2042\n",
      "i =  2043\n",
      "i =  2044\n",
      "i =  2045\n",
      "i =  2046\n",
      "i =  2047\n",
      "i =  2048\n",
      "i =  2049\n",
      "i =  2050\n",
      "i =  2051\n",
      "i =  2052\n",
      "i =  2053\n",
      "i =  2054\n",
      "i =  2055\n",
      "i =  2056\n",
      "i =  2057\n",
      "i =  2058\n",
      "i =  2059\n",
      "i =  2060\n",
      "i =  2061\n",
      "i =  2062\n",
      "i =  2063\n",
      "i =  2064\n",
      "i =  2065\n",
      "i =  2066\n",
      "i =  2067\n",
      "i =  2068\n",
      "i =  2069\n",
      "i =  2070\n",
      "i =  2071\n",
      "i =  2072\n",
      "i =  2073\n",
      "i =  2074\n",
      "i =  2075\n",
      "i =  2076\n",
      "i =  2077\n",
      "i =  2078\n",
      "i =  2079\n",
      "i =  2080\n",
      "i =  2081\n",
      "i =  2082\n",
      "i =  2083\n",
      "i =  2084\n",
      "i =  2085\n",
      "i =  2086\n",
      "i =  2087\n",
      "i =  2088\n",
      "i =  2089\n",
      "i =  2090\n",
      "i =  2091\n",
      "i =  2092\n",
      "i =  2093\n",
      "i =  2094\n",
      "i =  2095\n",
      "i =  2096\n",
      "i =  2097\n",
      "i =  2098\n",
      "i =  2099\n",
      "i =  2100\n",
      "i =  2101\n",
      "i =  2102\n",
      "i =  2103\n",
      "i =  2104\n",
      "i =  2105\n",
      "i =  2106\n",
      "i =  2107\n",
      "i =  2108\n",
      "i =  2109\n",
      "i =  2110\n",
      "i =  2111\n",
      "i =  2112\n",
      "i =  2113\n",
      "i =  2114\n",
      "i =  2115\n",
      "i =  2116\n",
      "i =  2117\n",
      "i =  2118\n",
      "i =  2119\n",
      "i =  2120\n",
      "i =  2121\n",
      "i =  2122\n",
      "i =  2123\n",
      "i =  2124\n",
      "i =  2125\n",
      "i =  2126\n",
      "i =  2127\n",
      "i =  2128\n",
      "i =  2129\n",
      "i =  2130\n",
      "i =  2131\n",
      "i =  2132\n",
      "i =  2133\n",
      "i =  2134\n",
      "i =  2135\n",
      "i =  2136\n",
      "i =  2137\n",
      "i =  2138\n",
      "i =  2139\n",
      "i =  2140\n",
      "i =  2141\n",
      "i =  2142\n",
      "i =  2143\n",
      "i =  2144\n",
      "i =  2145\n",
      "i =  2146\n",
      "i =  2147\n",
      "i =  2148\n",
      "i =  2149\n",
      "i =  2150\n",
      "i =  2151\n",
      "i =  2152\n",
      "i =  2153\n",
      "i =  2154\n",
      "i =  2155\n",
      "i =  2156\n",
      "i =  2157\n",
      "i =  2158\n",
      "i =  2159\n",
      "i =  2160\n",
      "i =  2161\n",
      "i =  2162\n",
      "i =  2163\n",
      "i =  2164\n",
      "i =  2165\n",
      "i =  2166\n",
      "i =  2167\n",
      "i =  2168\n",
      "i =  2169\n",
      "i =  2170\n",
      "i =  2171\n",
      "i =  2172\n",
      "i =  2173\n",
      "i =  2174\n",
      "i =  2175\n",
      "i =  2176\n",
      "i =  2177\n",
      "i =  2178\n",
      "i =  2179\n",
      "i =  2180\n",
      "i =  2181\n",
      "i =  2182\n",
      "i =  2183\n",
      "i =  2184\n",
      "i =  2185\n",
      "i =  2186\n",
      "i =  2187\n",
      "i =  2188\n",
      "i =  2189\n",
      "i =  2190\n",
      "i =  2191\n",
      "i =  2192\n",
      "i =  2193\n",
      "i =  2194\n",
      "i =  2195\n",
      "i =  2196\n",
      "i =  2197\n",
      "i =  2198\n",
      "i =  2199\n",
      "i =  2200\n",
      "i =  2201\n",
      "i =  2202\n",
      "i =  2203\n",
      "i =  2204\n",
      "i =  2205\n",
      "i =  2206\n",
      "i =  2207\n",
      "i =  2208\n",
      "i =  2209\n",
      "i =  2210\n",
      "i =  2211\n",
      "i =  2212\n",
      "i =  2213\n",
      "i =  2214\n",
      "i =  2215\n",
      "i =  2216\n",
      "i =  2217\n",
      "i =  2218\n",
      "i =  2219\n",
      "i =  2220\n",
      "i =  2221\n",
      "i =  2222\n",
      "i =  2223\n",
      "i =  2224\n",
      "i =  2225\n",
      "i =  2226\n",
      "i =  2227\n",
      "i =  2228\n",
      "i =  2229\n",
      "i =  2230\n",
      "i =  2231\n",
      "i =  2232\n",
      "i =  2233\n",
      "i =  2234\n",
      "i =  2235\n",
      "i =  2236\n",
      "i =  2237\n",
      "i =  2238\n",
      "i =  2239\n",
      "i =  2240\n",
      "i =  2241\n",
      "i =  2242\n",
      "i =  2243\n",
      "i =  2244\n",
      "i =  2245\n",
      "i =  2246\n",
      "i =  2247\n",
      "i =  2248\n",
      "i =  2249\n",
      "i =  2250\n",
      "i =  2251\n",
      "i =  2252\n",
      "i =  2253\n",
      "i =  2254\n",
      "i =  2255\n",
      "i =  2256\n",
      "i =  2257\n",
      "i =  2258\n",
      "i =  2259\n",
      "i =  2260\n",
      "i =  2261\n",
      "i =  2262\n",
      "i =  2263\n",
      "i =  2264\n",
      "i =  2265\n",
      "i =  2266\n",
      "i =  2267\n",
      "i =  2268\n",
      "i =  2269\n",
      "i =  2270\n",
      "i =  2271\n",
      "i =  2272\n",
      "i =  2273\n",
      "i =  2274\n",
      "i =  2275\n",
      "i =  2276\n",
      "i =  2277\n",
      "i =  2278\n",
      "i =  2279\n",
      "i =  2280\n",
      "i =  2281\n",
      "i =  2282\n",
      "i =  2283\n",
      "i =  2284\n",
      "i =  2285\n",
      "i =  2286\n",
      "i =  2287\n",
      "i =  2288\n",
      "i =  2289\n",
      "i =  2290\n",
      "i =  2291\n",
      "i =  2292\n",
      "i =  2293\n",
      "i =  2294\n",
      "i =  2295\n",
      "i =  2296\n",
      "i =  2297\n",
      "i =  2298\n",
      "i =  2299\n",
      "i =  2300\n",
      "i =  2301\n",
      "i =  2302\n",
      "i =  2303\n",
      "i =  2304\n",
      "i =  2305\n",
      "i =  2306\n",
      "i =  2307\n",
      "i =  2308\n",
      "i =  2309\n",
      "i =  2310\n",
      "i =  2311\n",
      "i =  2312\n",
      "i =  2313\n",
      "i =  2314\n",
      "i =  2315\n",
      "i =  2316\n",
      "i =  2317\n",
      "i =  2318\n",
      "i =  2319\n",
      "i =  2320\n",
      "i =  2321\n",
      "i =  2322\n",
      "i =  2323\n",
      "i =  2324\n",
      "i =  2325\n",
      "i =  2326\n",
      "i =  2327\n",
      "i =  2328\n",
      "i =  2329\n",
      "i =  2330\n",
      "i =  2331\n",
      "i =  2332\n",
      "i =  2333\n",
      "i =  2334\n",
      "i =  2335\n",
      "i =  2336\n",
      "i =  2337\n",
      "i =  2338\n",
      "i =  2339\n",
      "i =  2340\n",
      "i =  2341\n",
      "i =  2342\n",
      "i =  2343\n",
      "i =  2344\n",
      "i =  2345\n",
      "i =  2346\n",
      "i =  2347\n",
      "i =  2348\n",
      "i =  2349\n",
      "i =  2350\n",
      "i =  2351\n",
      "i =  2352\n",
      "i =  2353\n",
      "i =  2354\n",
      "i =  2355\n",
      "i =  2356\n",
      "i =  2357\n",
      "i =  2358\n",
      "i =  2359\n",
      "i =  2360\n",
      "i =  2361\n",
      "i =  2362\n",
      "i =  2363\n",
      "i =  2364\n",
      "i =  2365\n",
      "i =  2366\n",
      "i =  2367\n",
      "i =  2368\n",
      "i =  2369\n",
      "i =  2370\n",
      "i =  2371\n",
      "i =  2372\n",
      "i =  2373\n",
      "i =  2374\n",
      "i =  2375\n",
      "i =  2376\n",
      "i =  2377\n",
      "i =  2378\n",
      "i =  2379\n",
      "i =  2380\n",
      "i =  2381\n",
      "i =  2382\n",
      "i =  2383\n",
      "i =  2384\n",
      "i =  2385\n",
      "i =  2386\n",
      "i =  2387\n",
      "i =  2388\n",
      "i =  2389\n",
      "i =  2390\n",
      "i =  2391\n",
      "i =  2392\n",
      "i =  2393\n",
      "i =  2394\n",
      "i =  2395\n",
      "i =  2396\n",
      "i =  2397\n",
      "i =  2398\n",
      "i =  2399\n",
      "i =  2400\n",
      "i =  2401\n",
      "i =  2402\n",
      "i =  2403\n",
      "i =  2404\n",
      "i =  2405\n",
      "i =  2406\n",
      "i =  2407\n",
      "i =  2408\n",
      "i =  2409\n",
      "i =  2410\n",
      "i =  2411\n",
      "i =  2412\n",
      "i =  2413\n",
      "i =  2414\n",
      "i =  2415\n",
      "i =  2416\n",
      "i =  2417\n",
      "i =  2418\n",
      "i =  2419\n",
      "i =  2420\n",
      "i =  2421\n",
      "i =  2422\n",
      "i =  2423\n",
      "i =  2424\n",
      "i =  2425\n",
      "i =  2426\n",
      "i =  2427\n",
      "i =  2428\n",
      "i =  2429\n",
      "i =  2430\n",
      "i =  2431\n",
      "i =  2432\n",
      "i =  2433\n",
      "i =  2434\n",
      "i =  2435\n",
      "i =  2436\n",
      "i =  2437\n",
      "i =  2438\n",
      "i =  2439\n",
      "i =  2440\n",
      "i =  2441\n",
      "i =  2442\n",
      "i =  2443\n",
      "i =  2444\n",
      "i =  2445\n",
      "i =  2446\n",
      "i =  2447\n",
      "i =  2448\n",
      "i =  2449\n",
      "i =  2450\n",
      "i =  2451\n",
      "i =  2452\n",
      "i =  2453\n",
      "i =  2454\n",
      "i =  2455\n",
      "i =  2456\n",
      "i =  2457\n",
      "i =  2458\n",
      "i =  2459\n",
      "i =  2460\n",
      "i =  2461\n",
      "i =  2462\n",
      "i =  2463\n",
      "i =  2464\n",
      "i =  2465\n",
      "i =  2466\n",
      "i =  2467\n",
      "i =  2468\n",
      "i =  2469\n",
      "i =  2470\n",
      "i =  2471\n",
      "i =  2472\n",
      "i =  2473\n",
      "i =  2474\n",
      "i =  2475\n",
      "i =  2476\n",
      "i =  2477\n",
      "i =  2478\n",
      "i =  2479\n",
      "i =  2480\n",
      "i =  2481\n",
      "i =  2482\n",
      "i =  2483\n",
      "i =  2484\n",
      "i =  2485\n",
      "i =  2486\n",
      "i =  2487\n",
      "i =  2488\n",
      "i =  2489\n",
      "i =  2490\n",
      "i =  2491\n",
      "i =  2492\n",
      "i =  2493\n",
      "i =  2494\n",
      "i =  2495\n",
      "i =  2496\n",
      "i =  2497\n",
      "i =  2498\n",
      "i =  2499\n",
      "i =  2500\n",
      "i =  2501\n",
      "i =  2502\n",
      "i =  2503\n",
      "i =  2504\n",
      "i =  2505\n",
      "i =  2506\n",
      "i =  2507\n",
      "i =  2508\n",
      "i =  2509\n",
      "i =  2510\n",
      "i =  2511\n",
      "i =  2512\n",
      "i =  2513\n",
      "i =  2514\n",
      "i =  2515\n",
      "i =  2516\n",
      "i =  2517\n",
      "i =  2518\n",
      "i =  2519\n",
      "i =  2520\n",
      "i =  2521\n",
      "i =  2522\n",
      "i =  2523\n",
      "i =  2524\n",
      "i =  2525\n",
      "i =  2526\n",
      "i =  2527\n",
      "i =  2528\n",
      "i =  2529\n",
      "i =  2530\n",
      "i =  2531\n",
      "i =  2532\n",
      "i =  2533\n",
      "i =  2534\n",
      "i =  2535\n",
      "i =  2536\n",
      "i =  2537\n",
      "i =  2538\n",
      "i =  2539\n",
      "i =  2540\n",
      "i =  2541\n",
      "i =  2542\n",
      "i =  2543\n",
      "i =  2544\n",
      "i =  2545\n",
      "i =  2546\n",
      "i =  2547\n",
      "i =  2548\n",
      "i =  2549\n",
      "i =  2550\n",
      "i =  2551\n",
      "i =  2552\n",
      "i =  2553\n",
      "i =  2554\n",
      "i =  2555\n",
      "i =  2556\n",
      "i =  2557\n",
      "i =  2558\n",
      "i =  2559\n",
      "i =  2560\n",
      "i =  2561\n",
      "i =  2562\n",
      "i =  2563\n",
      "i =  2564\n",
      "i =  2565\n",
      "i =  2566\n",
      "i =  2567\n",
      "i =  2568\n",
      "i =  2569\n",
      "i =  2570\n",
      "i =  2571\n",
      "i =  2572\n",
      "i =  2573\n",
      "i =  2574\n",
      "i =  2575\n",
      "i =  2576\n",
      "i =  2577\n",
      "i =  2578\n",
      "i =  2579\n",
      "i =  2580\n",
      "i =  2581\n",
      "i =  2582\n",
      "i =  2583\n",
      "i =  2584\n",
      "i =  2585\n",
      "i =  2586\n",
      "i =  2587\n",
      "i =  2588\n",
      "i =  2589\n",
      "i =  2590\n",
      "i =  2591\n",
      "i =  2592\n",
      "i =  2593\n",
      "i =  2594\n",
      "i =  2595\n",
      "i =  2596\n",
      "i =  2597\n",
      "i =  2598\n",
      "i =  2599\n",
      "i =  2600\n",
      "i =  2601\n",
      "i =  2602\n",
      "i =  2603\n",
      "i =  2604\n",
      "i =  2605\n",
      "i =  2606\n",
      "i =  2607\n",
      "i =  2608\n",
      "i =  2609\n",
      "i =  2610\n",
      "i =  2611\n",
      "i =  2612\n",
      "i =  2613\n",
      "i =  2614\n",
      "i =  2615\n",
      "i =  2616\n",
      "i =  2617\n",
      "i =  2618\n",
      "i =  2619\n",
      "i =  2620\n",
      "i =  2621\n",
      "i =  2622\n",
      "i =  2623\n",
      "i =  2624\n",
      "i =  2625\n",
      "i =  2626\n",
      "i =  2627\n",
      "i =  2628\n",
      "i =  2629\n",
      "i =  2630\n",
      "i =  2631\n",
      "i =  2632\n",
      "i =  2633\n",
      "i =  2634\n",
      "i =  2635\n",
      "i =  2636\n",
      "i =  2637\n",
      "i =  2638\n",
      "i =  2639\n",
      "i =  2640\n",
      "i =  2641\n",
      "i =  2642\n",
      "i =  2643\n",
      "i =  2644\n",
      "i =  2645\n",
      "i =  2646\n",
      "i =  2647\n",
      "i =  2648\n",
      "i =  2649\n",
      "i =  2650\n",
      "i =  2651\n",
      "i =  2652\n",
      "i =  2653\n",
      "i =  2654\n",
      "i =  2655\n",
      "i =  2656\n",
      "i =  2657\n",
      "i =  2658\n",
      "i =  2659\n",
      "i =  2660\n",
      "i =  2661\n",
      "i =  2662\n",
      "i =  2663\n",
      "i =  2664\n",
      "i =  2665\n",
      "i =  2666\n",
      "i =  2667\n",
      "i =  2668\n",
      "i =  2669\n",
      "i =  2670\n",
      "i =  2671\n",
      "i =  2672\n",
      "i =  2673\n",
      "i =  2674\n",
      "i =  2675\n",
      "i =  2676\n",
      "i =  2677\n",
      "i =  2678\n",
      "i =  2679\n",
      "i =  2680\n",
      "i =  2681\n",
      "i =  2682\n",
      "i =  2683\n",
      "i =  2684\n",
      "i =  2685\n",
      "i =  2686\n",
      "i =  2687\n",
      "i =  2688\n",
      "i =  2689\n",
      "i =  2690\n",
      "i =  2691\n",
      "i =  2692\n",
      "i =  2693\n",
      "i =  2694\n",
      "i =  2695\n",
      "i =  2696\n",
      "i =  2697\n",
      "i =  2698\n",
      "i =  2699\n",
      "i =  2700\n",
      "i =  2701\n",
      "i =  2702\n",
      "i =  2703\n",
      "i =  2704\n",
      "i =  2705\n",
      "i =  2706\n",
      "i =  2707\n",
      "i =  2708\n",
      "i =  2709\n",
      "i =  2710\n",
      "i =  2711\n",
      "i =  2712\n",
      "i =  2713\n",
      "i =  2714\n",
      "i =  2715\n",
      "i =  2716\n",
      "i =  2717\n",
      "i =  2718\n",
      "i =  2719\n",
      "i =  2720\n",
      "i =  2721\n",
      "i =  2722\n",
      "i =  2723\n",
      "i =  2724\n",
      "i =  2725\n",
      "i =  2726\n",
      "i =  2727\n",
      "i =  2728\n",
      "i =  2729\n",
      "i =  2730\n",
      "i =  2731\n",
      "i =  2732\n",
      "i =  2733\n",
      "i =  2734\n",
      "i =  2735\n",
      "i =  2736\n",
      "i =  2737\n",
      "i =  2738\n",
      "i =  2739\n",
      "i =  2740\n",
      "i =  2741\n",
      "i =  2742\n",
      "i =  2743\n",
      "i =  2744\n",
      "i =  2745\n",
      "i =  2746\n",
      "i =  2747\n",
      "i =  2748\n",
      "i =  2749\n",
      "i =  2750\n",
      "i =  2751\n",
      "i =  2752\n",
      "i =  2753\n",
      "i =  2754\n",
      "i =  2755\n",
      "i =  2756\n",
      "i =  2757\n",
      "i =  2758\n",
      "i =  2759\n",
      "i =  2760\n",
      "i =  2761\n",
      "i =  2762\n",
      "i =  2763\n",
      "i =  2764\n",
      "i =  2765\n",
      "i =  2766\n",
      "i =  2767\n",
      "i =  2768\n",
      "i =  2769\n",
      "i =  2770\n",
      "i =  2771\n",
      "i =  2772\n",
      "i =  2773\n",
      "i =  2774\n",
      "i =  2775\n",
      "i =  2776\n",
      "i =  2777\n",
      "i =  2778\n",
      "i =  2779\n",
      "i =  2780\n",
      "i =  2781\n",
      "i =  2782\n",
      "i =  2783\n",
      "i =  2784\n",
      "i =  2785\n",
      "i =  2786\n",
      "i =  2787\n",
      "i =  2788\n",
      "i =  2789\n",
      "i =  2790\n",
      "i =  2791\n",
      "i =  2792\n",
      "i =  2793\n",
      "i =  2794\n",
      "i =  2795\n",
      "i =  2796\n",
      "i =  2797\n",
      "i =  2798\n",
      "i =  2799\n",
      "i =  2800\n",
      "i =  2801\n",
      "i =  2802\n",
      "i =  2803\n",
      "i =  2804\n",
      "i =  2805\n",
      "i =  2806\n",
      "i =  2807\n",
      "i =  2808\n",
      "i =  2809\n",
      "i =  2810\n",
      "i =  2811\n",
      "i =  2812\n",
      "i =  2813\n",
      "i =  2814\n",
      "i =  2815\n",
      "i =  2816\n",
      "i =  2817\n",
      "i =  2818\n",
      "i =  2819\n",
      "i =  2820\n",
      "i =  2821\n",
      "i =  2822\n",
      "i =  2823\n",
      "i =  2824\n",
      "i =  2825\n",
      "i =  2826\n",
      "i =  2827\n",
      "i =  2828\n",
      "i =  2829\n",
      "i =  2830\n",
      "i =  2831\n",
      "i =  2832\n",
      "i =  2833\n",
      "i =  2834\n",
      "i =  2835\n",
      "i =  2836\n",
      "i =  2837\n",
      "i =  2838\n",
      "i =  2839\n",
      "i =  2840\n",
      "i =  2841\n",
      "i =  2842\n",
      "i =  2843\n",
      "i =  2844\n",
      "i =  2845\n",
      "i =  2846\n",
      "i =  2847\n",
      "i =  2848\n",
      "i =  2849\n",
      "i =  2850\n",
      "i =  2851\n",
      "i =  2852\n",
      "i =  2853\n",
      "i =  2854\n",
      "i =  2855\n",
      "i =  2856\n",
      "i =  2857\n",
      "i =  2858\n",
      "i =  2859\n",
      "i =  2860\n",
      "i =  2861\n",
      "i =  2862\n",
      "i =  2863\n",
      "i =  2864\n",
      "i =  2865\n",
      "i =  2866\n",
      "i =  2867\n",
      "i =  2868\n",
      "i =  2869\n",
      "i =  2870\n",
      "i =  2871\n",
      "i =  2872\n",
      "i =  2873\n",
      "i =  2874\n",
      "i =  2875\n",
      "i =  2876\n",
      "i =  2877\n",
      "i =  2878\n",
      "i =  2879\n",
      "i =  2880\n",
      "i =  2881\n",
      "i =  2882\n",
      "i =  2883\n",
      "i =  2884\n",
      "i =  2885\n",
      "i =  2886\n",
      "i =  2887\n",
      "i =  2888\n",
      "i =  2889\n",
      "i =  2890\n",
      "i =  2891\n",
      "i =  2892\n",
      "i =  2893\n",
      "i =  2894\n",
      "i =  2895\n",
      "i =  2896\n",
      "i =  2897\n",
      "i =  2898\n",
      "i =  2899\n",
      "i =  2900\n",
      "i =  2901\n",
      "i =  2902\n",
      "i =  2903\n",
      "i =  2904\n",
      "i =  2905\n",
      "i =  2906\n",
      "i =  2907\n",
      "i =  2908\n",
      "i =  2909\n",
      "i =  2910\n",
      "i =  2911\n",
      "i =  2912\n",
      "i =  2913\n",
      "i =  2914\n",
      "i =  2915\n",
      "i =  2916\n",
      "i =  2917\n",
      "i =  2918\n",
      "i =  2919\n",
      "i =  2920\n",
      "i =  2921\n",
      "i =  2922\n",
      "i =  2923\n",
      "i =  2924\n",
      "i =  2925\n",
      "i =  2926\n",
      "i =  2927\n",
      "i =  2928\n",
      "i =  2929\n",
      "i =  2930\n",
      "i =  2931\n",
      "i =  2932\n",
      "i =  2933\n",
      "i =  2934\n",
      "i =  2935\n",
      "i =  2936\n",
      "i =  2937\n",
      "i =  2938\n",
      "i =  2939\n",
      "i =  2940\n",
      "i =  2941\n",
      "i =  2942\n",
      "i =  2943\n",
      "i =  2944\n",
      "i =  2945\n",
      "i =  2946\n",
      "i =  2947\n",
      "i =  2948\n",
      "i =  2949\n",
      "i =  2950\n",
      "i =  2951\n",
      "i =  2952\n",
      "i =  2953\n",
      "i =  2954\n",
      "i =  2955\n",
      "i =  2956\n",
      "i =  2957\n",
      "i =  2958\n",
      "i =  2959\n",
      "i =  2960\n",
      "i =  2961\n",
      "i =  2962\n",
      "i =  2963\n",
      "i =  2964\n",
      "i =  2965\n",
      "i =  2966\n",
      "i =  2967\n",
      "i =  2968\n",
      "i =  2969\n",
      "i =  2970\n",
      "i =  2971\n",
      "i =  2972\n",
      "i =  2973\n",
      "i =  2974\n",
      "i =  2975\n",
      "i =  2976\n",
      "i =  2977\n",
      "i =  2978\n",
      "i =  2979\n",
      "i =  2980\n",
      "i =  2981\n",
      "i =  2982\n",
      "i =  2983\n",
      "i =  2984\n",
      "i =  2985\n",
      "i =  2986\n",
      "i =  2987\n",
      "i =  2988\n",
      "i =  2989\n",
      "i =  2990\n",
      "i =  2991\n",
      "i =  2992\n",
      "i =  2993\n",
      "i =  2994\n",
      "i =  2995\n",
      "i =  2996\n",
      "i =  2997\n",
      "i =  2998\n",
      "i =  2999\n",
      "i =  3000\n",
      "i =  3001\n",
      "i =  3002\n",
      "i =  3003\n",
      "i =  3004\n",
      "i =  3005\n",
      "i =  3006\n",
      "i =  3007\n",
      "i =  3008\n",
      "i =  3009\n",
      "i =  3010\n",
      "i =  3011\n",
      "i =  3012\n",
      "i =  3013\n",
      "i =  3014\n",
      "i =  3015\n",
      "i =  3016\n",
      "i =  3017\n",
      "i =  3018\n",
      "i =  3019\n",
      "i =  3020\n",
      "i =  3021\n",
      "i =  3022\n",
      "i =  3023\n",
      "i =  3024\n",
      "i =  3025\n",
      "i =  3026\n",
      "i =  3027\n",
      "i =  3028\n",
      "i =  3029\n",
      "i =  3030\n",
      "i =  3031\n",
      "i =  3032\n",
      "i =  3033\n",
      "i =  3034\n",
      "i =  3035\n",
      "i =  3036\n",
      "i =  3037\n",
      "i =  3038\n",
      "i =  3039\n",
      "i =  3040\n",
      "i =  3041\n",
      "i =  3042\n",
      "i =  3043\n",
      "i =  3044\n",
      "i =  3045\n",
      "i =  3046\n",
      "i =  3047\n",
      "i =  3048\n",
      "i =  3049\n",
      "i =  3050\n",
      "i =  3051\n",
      "i =  3052\n",
      "i =  3053\n",
      "i =  3054\n",
      "i =  3055\n",
      "i =  3056\n",
      "i =  3057\n",
      "i =  3058\n",
      "i =  3059\n",
      "i =  3060\n",
      "i =  3061\n",
      "i =  3062\n",
      "i =  3063\n",
      "i =  3064\n",
      "i =  3065\n",
      "i =  3066\n",
      "i =  3067\n",
      "i =  3068\n",
      "i =  3069\n",
      "i =  3070\n",
      "i =  3071\n",
      "i =  3072\n",
      "i =  3073\n",
      "i =  3074\n",
      "i =  3075\n",
      "i =  3076\n",
      "i =  3077\n",
      "i =  3078\n",
      "i =  3079\n",
      "i =  3080\n",
      "i =  3081\n",
      "i =  3082\n",
      "i =  3083\n",
      "i =  3084\n",
      "i =  3085\n",
      "i =  3086\n",
      "i =  3087\n",
      "i =  3088\n",
      "i =  3089\n",
      "i =  3090\n",
      "i =  3091\n",
      "i =  3092\n",
      "i =  3093\n",
      "i =  3094\n",
      "i =  3095\n",
      "i =  3096\n",
      "i =  3097\n",
      "i =  3098\n",
      "i =  3099\n",
      "i =  3100\n",
      "i =  3101\n",
      "i =  3102\n",
      "i =  3103\n",
      "i =  3104\n",
      "i =  3105\n",
      "i =  3106\n",
      "i =  3107\n",
      "i =  3108\n",
      "i =  3109\n",
      "i =  3110\n",
      "i =  3111\n",
      "i =  3112\n",
      "i =  3113\n",
      "i =  3114\n",
      "i =  3115\n",
      "i =  3116\n",
      "i =  3117\n",
      "i =  3118\n",
      "i =  3119\n",
      "i =  3120\n",
      "i =  3121\n",
      "i =  3122\n",
      "i =  3123\n",
      "i =  3124\n",
      "i =  3125\n",
      "i =  3126\n",
      "i =  3127\n",
      "i =  3128\n",
      "i =  3129\n",
      "i =  3130\n",
      "i =  3131\n",
      "i =  3132\n",
      "i =  3133\n",
      "i =  3134\n",
      "i =  3135\n",
      "i =  3136\n",
      "i =  3137\n",
      "i =  3138\n",
      "i =  3139\n",
      "i =  3140\n",
      "i =  3141\n",
      "i =  3142\n",
      "i =  3143\n",
      "i =  3144\n",
      "i =  3145\n",
      "i =  3146\n",
      "i =  3147\n",
      "i =  3148\n",
      "i =  3149\n",
      "i =  3150\n",
      "i =  3151\n",
      "i =  3152\n",
      "i =  3153\n",
      "i =  3154\n",
      "i =  3155\n",
      "i =  3156\n",
      "i =  3157\n",
      "i =  3158\n",
      "i =  3159\n",
      "i =  3160\n",
      "i =  3161\n",
      "i =  3162\n",
      "i =  3163\n",
      "i =  3164\n",
      "i =  3165\n",
      "i =  3166\n",
      "i =  3167\n",
      "i =  3168\n",
      "i =  3169\n",
      "i =  3170\n",
      "i =  3171\n",
      "i =  3172\n",
      "i =  3173\n",
      "i =  3174\n",
      "i =  3175\n",
      "i =  3176\n",
      "i =  3177\n",
      "i =  3178\n",
      "i =  3179\n",
      "i =  3180\n",
      "i =  3181\n",
      "i =  3182\n",
      "i =  3183\n",
      "i =  3184\n",
      "i =  3185\n",
      "i =  3186\n",
      "i =  3187\n",
      "i =  3188\n",
      "i =  3189\n",
      "i =  3190\n",
      "i =  3191\n",
      "i =  3192\n",
      "i =  3193\n",
      "i =  3194\n",
      "i =  3195\n",
      "i =  3196\n",
      "i =  3197\n",
      "i =  3198\n",
      "i =  3199\n",
      "i =  3200\n",
      "i =  3201\n",
      "i =  3202\n",
      "i =  3203\n",
      "i =  3204\n",
      "i =  3205\n",
      "i =  3206\n",
      "i =  3207\n",
      "i =  3208\n",
      "i =  3209\n",
      "i =  3210\n",
      "i =  3211\n",
      "i =  3212\n",
      "i =  3213\n",
      "i =  3214\n",
      "i =  3215\n",
      "i =  3216\n",
      "i =  3217\n",
      "i =  3218\n",
      "i =  3219\n",
      "i =  3220\n",
      "i =  3221\n",
      "i =  3222\n",
      "i =  3223\n",
      "i =  3224\n",
      "i =  3225\n",
      "i =  3226\n",
      "i =  3227\n",
      "i =  3228\n",
      "i =  3229\n",
      "i =  3230\n",
      "i =  3231\n",
      "i =  3232\n",
      "i =  3233\n",
      "i =  3234\n",
      "i =  3235\n",
      "i =  3236\n",
      "i =  3237\n",
      "i =  3238\n",
      "i =  3239\n",
      "i =  3240\n",
      "i =  3241\n",
      "i =  3242\n",
      "i =  3243\n",
      "i =  3244\n",
      "i =  3245\n",
      "i =  3246\n",
      "i =  3247\n",
      "i =  3248\n",
      "i =  3249\n",
      "i =  3250\n",
      "i =  3251\n",
      "i =  3252\n",
      "i =  3253\n",
      "i =  3254\n",
      "i =  3255\n",
      "i =  3256\n",
      "i =  3257\n",
      "i =  3258\n",
      "i =  3259\n",
      "i =  3260\n",
      "i =  3261\n",
      "i =  3262\n",
      "i =  3263\n",
      "i =  3264\n",
      "i =  3265\n",
      "i =  3266\n",
      "i =  3267\n",
      "i =  3268\n",
      "i =  3269\n",
      "i =  3270\n",
      "i =  3271\n",
      "i =  3272\n",
      "i =  3273\n",
      "i =  3274\n",
      "i =  3275\n",
      "i =  3276\n",
      "i =  3277\n",
      "i =  3278\n",
      "i =  3279\n",
      "i =  3280\n",
      "i =  3281\n",
      "i =  3282\n",
      "i =  3283\n",
      "i =  3284\n",
      "i =  3285\n",
      "i =  3286\n",
      "i =  3287\n",
      "i =  3288\n",
      "i =  3289\n",
      "i =  3290\n",
      "i =  3291\n",
      "i =  3292\n",
      "i =  3293\n",
      "i =  3294\n",
      "i =  3295\n",
      "i =  3296\n",
      "i =  3297\n",
      "i =  3298\n",
      "i =  3299\n",
      "i =  3300\n",
      "i =  3301\n",
      "i =  3302\n",
      "i =  3303\n",
      "i =  3304\n",
      "i =  3305\n",
      "i =  3306\n",
      "i =  3307\n",
      "i =  3308\n",
      "i =  3309\n",
      "i =  3310\n",
      "i =  3311\n",
      "i =  3312\n",
      "i =  3313\n",
      "i =  3314\n",
      "i =  3315\n",
      "i =  3316\n",
      "i =  3317\n",
      "i =  3318\n",
      "i =  3319\n",
      "i =  3320\n",
      "i =  3321\n",
      "i =  3322\n",
      "i =  3323\n",
      "i =  3324\n",
      "i =  3325\n",
      "i =  3326\n",
      "i =  3327\n",
      "i =  3328\n",
      "i =  3329\n",
      "i =  3330\n",
      "i =  3331\n",
      "i =  3332\n",
      "i =  3333\n",
      "i =  3334\n",
      "i =  3335\n",
      "i =  3336\n",
      "i =  3337\n",
      "i =  3338\n",
      "i =  3339\n",
      "i =  3340\n",
      "i =  3341\n",
      "i =  3342\n",
      "i =  3343\n",
      "i =  3344\n",
      "i =  3345\n",
      "i =  3346\n",
      "i =  3347\n",
      "i =  3348\n",
      "i =  3349\n",
      "i =  3350\n",
      "i =  3351\n",
      "i =  3352\n",
      "i =  3353\n",
      "i =  3354\n",
      "i =  3355\n",
      "i =  3356\n",
      "i =  3357\n",
      "i =  3358\n",
      "i =  3359\n",
      "i =  3360\n",
      "i =  3361\n",
      "i =  3362\n",
      "i =  3363\n",
      "i =  3364\n",
      "i =  3365\n",
      "i =  3366\n",
      "i =  3367\n",
      "i =  3368\n",
      "i =  3369\n",
      "i =  3370\n",
      "i =  3371\n",
      "i =  3372\n",
      "i =  3373\n",
      "i =  3374\n",
      "i =  3375\n",
      "i =  3376\n",
      "i =  3377\n",
      "i =  3378\n",
      "i =  3379\n",
      "i =  3380\n",
      "i =  3381\n",
      "i =  3382\n",
      "i =  3383\n",
      "i =  3384\n",
      "i =  3385\n",
      "i =  3386\n",
      "i =  3387\n",
      "i =  3388\n",
      "i =  3389\n",
      "i =  3390\n",
      "i =  3391\n",
      "i =  3392\n",
      "i =  3393\n",
      "i =  3394\n",
      "i =  3395\n",
      "i =  3396\n",
      "i =  3397\n",
      "i =  3398\n",
      "i =  3399\n",
      "i =  3400\n",
      "i =  3401\n",
      "i =  3402\n",
      "i =  3403\n",
      "i =  3404\n",
      "i =  3405\n",
      "i =  3406\n",
      "i =  3407\n",
      "i =  3408\n",
      "i =  3409\n",
      "i =  3410\n",
      "i =  3411\n",
      "i =  3412\n",
      "i =  3413\n",
      "i =  3414\n",
      "i =  3415\n",
      "i =  3416\n",
      "i =  3417\n",
      "i =  3418\n",
      "i =  3419\n",
      "i =  3420\n",
      "i =  3421\n",
      "i =  3422\n",
      "i =  3423\n",
      "i =  3424\n",
      "i =  3425\n",
      "i =  3426\n",
      "i =  3427\n",
      "i =  3428\n",
      "i =  3429\n",
      "i =  3430\n",
      "i =  3431\n",
      "i =  3432\n",
      "i =  3433\n",
      "i =  3434\n",
      "i =  3435\n",
      "i =  3436\n",
      "i =  3437\n",
      "i =  3438\n",
      "i =  3439\n",
      "i =  3440\n",
      "i =  3441\n",
      "i =  3442\n",
      "i =  3443\n",
      "i =  3444\n",
      "i =  3445\n",
      "i =  3446\n",
      "i =  3447\n",
      "i =  3448\n",
      "i =  3449\n",
      "i =  3450\n",
      "i =  3451\n",
      "i =  3452\n",
      "i =  3453\n",
      "i =  3454\n",
      "i =  3455\n",
      "i =  3456\n",
      "i =  3457\n",
      "i =  3458\n",
      "i =  3459\n",
      "i =  3460\n",
      "i =  3461\n",
      "i =  3462\n",
      "i =  3463\n",
      "i =  3464\n",
      "i =  3465\n",
      "i =  3466\n",
      "i =  3467\n",
      "i =  3468\n",
      "i =  3469\n",
      "i =  3470\n",
      "i =  3471\n",
      "i =  3472\n",
      "i =  3473\n",
      "i =  3474\n",
      "i =  3475\n",
      "i =  3476\n",
      "i =  3477\n",
      "i =  3478\n",
      "i =  3479\n",
      "i =  3480\n",
      "i =  3481\n",
      "i =  3482\n",
      "i =  3483\n",
      "i =  3484\n",
      "i =  3485\n",
      "i =  3486\n",
      "i =  3487\n",
      "i =  3488\n",
      "i =  3489\n",
      "i =  3490\n",
      "i =  3491\n",
      "i =  3492\n",
      "i =  3493\n",
      "i =  3494\n",
      "i =  3495\n",
      "i =  3496\n",
      "i =  3497\n",
      "i =  3498\n",
      "i =  3499\n",
      "i =  3500\n",
      "i =  3501\n",
      "i =  3502\n",
      "i =  3503\n",
      "i =  3504\n",
      "i =  3505\n",
      "i =  3506\n",
      "i =  3507\n",
      "i =  3508\n",
      "i =  3509\n",
      "i =  3510\n",
      "i =  3511\n",
      "i =  3512\n",
      "i =  3513\n",
      "i =  3514\n",
      "i =  3515\n",
      "i =  3516\n",
      "i =  3517\n",
      "i =  3518\n",
      "i =  3519\n",
      "i =  3520\n",
      "i =  3521\n",
      "i =  3522\n",
      "i =  3523\n",
      "i =  3524\n",
      "i =  3525\n",
      "i =  3526\n",
      "i =  3527\n",
      "i =  3528\n",
      "i =  3529\n",
      "i =  3530\n",
      "i =  3531\n",
      "i =  3532\n",
      "i =  3533\n",
      "i =  3534\n",
      "i =  3535\n",
      "i =  3536\n",
      "i =  3537\n",
      "i =  3538\n",
      "i =  3539\n",
      "i =  3540\n",
      "i =  3541\n",
      "i =  3542\n",
      "i =  3543\n",
      "i =  3544\n",
      "i =  3545\n",
      "i =  3546\n",
      "i =  3547\n",
      "i =  3548\n",
      "i =  3549\n",
      "i =  3550\n",
      "i =  3551\n",
      "i =  3552\n",
      "i =  3553\n",
      "i =  3554\n",
      "i =  3555\n",
      "i =  3556\n",
      "i =  3557\n",
      "i =  3558\n",
      "i =  3559\n",
      "i =  3560\n",
      "i =  3561\n",
      "i =  3562\n",
      "i =  3563\n",
      "i =  3564\n",
      "i =  3565\n",
      "i =  3566\n",
      "i =  3567\n",
      "i =  3568\n",
      "i =  3569\n",
      "i =  3570\n",
      "i =  3571\n",
      "i =  3572\n",
      "i =  3573\n",
      "i =  3574\n",
      "i =  3575\n",
      "i =  3576\n",
      "i =  3577\n",
      "i =  3578\n",
      "i =  3579\n",
      "i =  3580\n",
      "i =  3581\n",
      "i =  3582\n",
      "i =  3583\n",
      "i =  3584\n",
      "i =  3585\n",
      "i =  3586\n",
      "i =  3587\n",
      "i =  3588\n",
      "i =  3589\n",
      "i =  3590\n",
      "i =  3591\n",
      "i =  3592\n",
      "i =  3593\n",
      "i =  3594\n",
      "i =  3595\n",
      "i =  3596\n",
      "i =  3597\n",
      "i =  3598\n",
      "i =  3599\n",
      "i =  3600\n",
      "i =  3601\n",
      "i =  3602\n",
      "i =  3603\n",
      "i =  3604\n",
      "i =  3605\n",
      "i =  3606\n",
      "i =  3607\n",
      "i =  3608\n",
      "i =  3609\n",
      "i =  3610\n",
      "i =  3611\n",
      "i =  3612\n",
      "i =  3613\n",
      "i =  3614\n",
      "i =  3615\n",
      "i =  3616\n",
      "i =  3617\n",
      "i =  3618\n",
      "i =  3619\n",
      "i =  3620\n",
      "i =  3621\n",
      "i =  3622\n",
      "i =  3623\n",
      "i =  3624\n",
      "i =  3625\n",
      "i =  3626\n",
      "i =  3627\n",
      "i =  3628\n",
      "i =  3629\n",
      "i =  3630\n",
      "i =  3631\n",
      "i =  3632\n",
      "i =  3633\n",
      "i =  3634\n",
      "i =  3635\n",
      "i =  3636\n",
      "i =  3637\n",
      "i =  3638\n",
      "i =  3639\n",
      "i =  3640\n",
      "i =  3641\n",
      "i =  3642\n",
      "i =  3643\n",
      "i =  3644\n",
      "i =  3645\n",
      "i =  3646\n",
      "i =  3647\n",
      "i =  3648\n",
      "i =  3649\n",
      "i =  3650\n",
      "i =  3651\n",
      "i =  3652\n",
      "i =  3653\n",
      "i =  3654\n",
      "i =  3655\n",
      "i =  3656\n",
      "i =  3657\n",
      "i =  3658\n",
      "i =  3659\n",
      "i =  3660\n",
      "i =  3661\n",
      "i =  3662\n",
      "i =  3663\n",
      "i =  3664\n",
      "i =  3665\n",
      "i =  3666\n",
      "i =  3667\n",
      "i =  3668\n",
      "i =  3669\n",
      "i =  3670\n",
      "i =  3671\n",
      "i =  3672\n",
      "i =  3673\n",
      "i =  3674\n",
      "i =  3675\n",
      "i =  3676\n",
      "i =  3677\n",
      "i =  3678\n",
      "i =  3679\n",
      "i =  3680\n",
      "i =  3681\n",
      "i =  3682\n",
      "i =  3683\n",
      "i =  3684\n",
      "i =  3685\n",
      "i =  3686\n",
      "i =  3687\n",
      "i =  3688\n",
      "i =  3689\n",
      "i =  3690\n",
      "i =  3691\n",
      "i =  3692\n",
      "i =  3693\n",
      "i =  3694\n",
      "i =  3695\n",
      "i =  3696\n",
      "i =  3697\n",
      "i =  3698\n",
      "i =  3699\n",
      "i =  3700\n",
      "i =  3701\n",
      "i =  3702\n",
      "i =  3703\n",
      "i =  3704\n",
      "i =  3705\n",
      "i =  3706\n",
      "i =  3707\n",
      "i =  3708\n",
      "i =  3709\n",
      "i =  3710\n",
      "i =  3711\n",
      "i =  3712\n",
      "i =  3713\n",
      "i =  3714\n",
      "i =  3715\n",
      "i =  3716\n",
      "i =  3717\n",
      "i =  3718\n",
      "i =  3719\n",
      "i =  3720\n",
      "i =  3721\n",
      "i =  3722\n",
      "i =  3723\n",
      "i =  3724\n",
      "i =  3725\n",
      "i =  3726\n",
      "i =  3727\n",
      "i =  3728\n",
      "i =  3729\n",
      "i =  3730\n",
      "i =  3731\n",
      "i =  3732\n",
      "i =  3733\n",
      "i =  3734\n",
      "i =  3735\n",
      "i =  3736\n",
      "i =  3737\n",
      "i =  3738\n",
      "i =  3739\n",
      "i =  3740\n",
      "i =  3741\n",
      "i =  3742\n",
      "i =  3743\n",
      "i =  3744\n",
      "i =  3745\n",
      "i =  3746\n",
      "i =  3747\n",
      "i =  3748\n",
      "i =  3749\n",
      "i =  3750\n",
      "i =  3751\n",
      "i =  3752\n",
      "i =  3753\n",
      "i =  3754\n",
      "i =  3755\n",
      "i =  3756\n",
      "i =  3757\n",
      "i =  3758\n",
      "i =  3759\n",
      "i =  3760\n",
      "i =  3761\n",
      "i =  3762\n",
      "i =  3763\n",
      "i =  3764\n",
      "i =  3765\n",
      "i =  3766\n",
      "i =  3767\n",
      "i =  3768\n",
      "i =  3769\n",
      "i =  3770\n",
      "i =  3771\n",
      "i =  3772\n",
      "i =  3773\n",
      "i =  3774\n",
      "i =  3775\n",
      "i =  3776\n",
      "i =  3777\n",
      "i =  3778\n",
      "i =  3779\n",
      "i =  3780\n",
      "i =  3781\n",
      "i =  3782\n",
      "i =  3783\n",
      "i =  3784\n",
      "i =  3785\n",
      "i =  3786\n",
      "i =  3787\n",
      "i =  3788\n",
      "i =  3789\n",
      "i =  3790\n",
      "i =  3791\n",
      "i =  3792\n",
      "i =  3793\n",
      "i =  3794\n",
      "i =  3795\n",
      "i =  3796\n",
      "i =  3797\n",
      "i =  3798\n",
      "i =  3799\n",
      "i =  3800\n",
      "i =  3801\n",
      "i =  3802\n",
      "i =  3803\n",
      "i =  3804\n",
      "i =  3805\n",
      "i =  3806\n",
      "i =  3807\n",
      "i =  3808\n",
      "i =  3809\n",
      "i =  3810\n",
      "i =  3811\n",
      "i =  3812\n",
      "i =  3813\n",
      "i =  3814\n",
      "i =  3815\n",
      "i =  3816\n",
      "i =  3817\n",
      "i =  3818\n",
      "i =  3819\n",
      "i =  3820\n",
      "i =  3821\n",
      "i =  3822\n",
      "i =  3823\n",
      "i =  3824\n",
      "i =  3825\n",
      "i =  3826\n",
      "i =  3827\n",
      "i =  3828\n",
      "i =  3829\n",
      "i =  3830\n",
      "i =  3831\n",
      "i =  3832\n",
      "i =  3833\n",
      "i =  3834\n",
      "i =  3835\n",
      "i =  3836\n",
      "i =  3837\n",
      "i =  3838\n",
      "i =  3839\n",
      "i =  3840\n",
      "i =  3841\n",
      "i =  3842\n",
      "i =  3843\n",
      "i =  3844\n",
      "i =  3845\n",
      "i =  3846\n",
      "i =  3847\n",
      "i =  3848\n",
      "i =  3849\n",
      "i =  3850\n",
      "i =  3851\n",
      "i =  3852\n",
      "i =  3853\n",
      "i =  3854\n",
      "i =  3855\n",
      "i =  3856\n",
      "i =  3857\n",
      "i =  3858\n",
      "i =  3859\n",
      "i =  3860\n",
      "i =  3861\n",
      "i =  3862\n",
      "i =  3863\n",
      "i =  3864\n",
      "i =  3865\n",
      "i =  3866\n",
      "i =  3867\n",
      "i =  3868\n",
      "i =  3869\n",
      "i =  3870\n",
      "i =  3871\n",
      "i =  3872\n",
      "i =  3873\n",
      "i =  3874\n",
      "i =  3875\n",
      "i =  3876\n",
      "i =  3877\n",
      "i =  3878\n",
      "i =  3879\n",
      "i =  3880\n",
      "i =  3881\n",
      "i =  3882\n",
      "i =  3883\n",
      "i =  3884\n",
      "i =  3885\n",
      "i =  3886\n",
      "i =  3887\n",
      "i =  3888\n",
      "i =  3889\n",
      "i =  3890\n",
      "i =  3891\n",
      "i =  3892\n",
      "i =  3893\n",
      "i =  3894\n",
      "i =  3895\n",
      "i =  3896\n",
      "i =  3897\n",
      "i =  3898\n",
      "i =  3899\n",
      "i =  3900\n",
      "i =  3901\n",
      "i =  3902\n",
      "i =  3903\n",
      "i =  3904\n",
      "i =  3905\n",
      "i =  3906\n",
      "i =  3907\n",
      "i =  3908\n",
      "i =  3909\n",
      "i =  3910\n",
      "i =  3911\n",
      "i =  3912\n",
      "i =  3913\n",
      "i =  3914\n",
      "i =  3915\n",
      "i =  3916\n",
      "i =  3917\n",
      "i =  3918\n",
      "i =  3919\n",
      "i =  3920\n",
      "i =  3921\n",
      "i =  3922\n",
      "i =  3923\n",
      "i =  3924\n",
      "i =  3925\n",
      "i =  3926\n",
      "i =  3927\n",
      "i =  3928\n",
      "i =  3929\n",
      "i =  3930\n",
      "i =  3931\n",
      "i =  3932\n",
      "i =  3933\n",
      "i =  3934\n",
      "i =  3935\n",
      "i =  3936\n",
      "i =  3937\n",
      "i =  3938\n",
      "i =  3939\n",
      "i =  3940\n",
      "i =  3941\n",
      "i =  3942\n",
      "i =  3943\n",
      "i =  3944\n",
      "i =  3945\n",
      "i =  3946\n",
      "i =  3947\n",
      "i =  3948\n",
      "i =  3949\n",
      "i =  3950\n",
      "i =  3951\n",
      "i =  3952\n",
      "i =  3953\n",
      "i =  3954\n",
      "i =  3955\n",
      "i =  3956\n",
      "i =  3957\n",
      "i =  3958\n",
      "i =  3959\n",
      "i =  3960\n",
      "i =  3961\n",
      "i =  3962\n",
      "i =  3963\n",
      "i =  3964\n",
      "i =  3965\n",
      "i =  3966\n",
      "i =  3967\n",
      "i =  3968\n",
      "i =  3969\n",
      "i =  3970\n",
      "i =  3971\n",
      "i =  3972\n",
      "i =  3973\n",
      "i =  3974\n",
      "i =  3975\n",
      "i =  3976\n",
      "i =  3977\n",
      "i =  3978\n",
      "i =  3979\n",
      "i =  3980\n",
      "i =  3981\n",
      "i =  3982\n",
      "i =  3983\n",
      "i =  3984\n",
      "i =  3985\n",
      "i =  3986\n",
      "i =  3987\n",
      "i =  3988\n",
      "i =  3989\n",
      "i =  3990\n",
      "i =  3991\n",
      "i =  3992\n",
      "i =  3993\n",
      "i =  3994\n",
      "i =  3995\n",
      "i =  3996\n",
      "i =  3997\n",
      "i =  3998\n",
      "i =  3999\n",
      "i =  4000\n",
      "i =  4001\n",
      "i =  4002\n",
      "i =  4003\n",
      "i =  4004\n",
      "i =  4005\n",
      "i =  4006\n",
      "i =  4007\n",
      "i =  4008\n",
      "i =  4009\n",
      "i =  4010\n",
      "i =  4011\n",
      "i =  4012\n",
      "i =  4013\n",
      "i =  4014\n",
      "i =  4015\n",
      "i =  4016\n",
      "i =  4017\n",
      "i =  4018\n",
      "i =  4019\n",
      "i =  4020\n",
      "i =  4021\n",
      "i =  4022\n",
      "i =  4023\n",
      "i =  4024\n",
      "i =  4025\n",
      "i =  4026\n",
      "i =  4027\n",
      "i =  4028\n",
      "i =  4029\n",
      "i =  4030\n",
      "i =  4031\n",
      "i =  4032\n",
      "i =  4033\n",
      "i =  4034\n",
      "i =  4035\n",
      "i =  4036\n",
      "i =  4037\n",
      "i =  4038\n",
      "i =  4039\n",
      "i =  4040\n",
      "i =  4041\n",
      "i =  4042\n",
      "i =  4043\n",
      "i =  4044\n",
      "i =  4045\n",
      "i =  4046\n",
      "i =  4047\n",
      "i =  4048\n",
      "i =  4049\n",
      "i =  4050\n",
      "i =  4051\n",
      "i =  4052\n",
      "i =  4053\n",
      "i =  4054\n",
      "i =  4055\n",
      "i =  4056\n",
      "i =  4057\n",
      "i =  4058\n",
      "i =  4059\n",
      "i =  4060\n",
      "i =  4061\n",
      "i =  4062\n",
      "i =  4063\n",
      "i =  4064\n",
      "i =  4065\n",
      "i =  4066\n",
      "i =  4067\n",
      "i =  4068\n",
      "i =  4069\n",
      "i =  4070\n",
      "i =  4071\n",
      "i =  4072\n",
      "i =  4073\n",
      "i =  4074\n",
      "i =  4075\n",
      "i =  4076\n",
      "i =  4077\n",
      "i =  4078\n",
      "i =  4079\n",
      "i =  4080\n",
      "i =  4081\n",
      "i =  4082\n",
      "i =  4083\n",
      "i =  4084\n",
      "i =  4085\n",
      "i =  4086\n",
      "i =  4087\n",
      "i =  4088\n",
      "i =  4089\n",
      "i =  4090\n",
      "i =  4091\n",
      "i =  4092\n",
      "i =  4093\n",
      "i =  4094\n",
      "i =  4095\n",
      "i =  4096\n",
      "i =  4097\n",
      "i =  4098\n",
      "i =  4099\n",
      "i =  4100\n",
      "i =  4101\n",
      "i =  4102\n",
      "i =  4103\n",
      "i =  4104\n",
      "i =  4105\n",
      "i =  4106\n",
      "i =  4107\n",
      "i =  4108\n",
      "i =  4109\n",
      "i =  4110\n",
      "i =  4111\n",
      "i =  4112\n",
      "i =  4113\n",
      "i =  4114\n",
      "i =  4115\n",
      "i =  4116\n",
      "i =  4117\n",
      "i =  4118\n",
      "i =  4119\n",
      "i =  4120\n",
      "i =  4121\n",
      "i =  4122\n",
      "i =  4123\n",
      "i =  4124\n",
      "i =  4125\n",
      "i =  4126\n",
      "i =  4127\n",
      "i =  4128\n",
      "i =  4129\n",
      "i =  4130\n",
      "i =  4131\n",
      "i =  4132\n",
      "i =  4133\n",
      "i =  4134\n",
      "i =  4135\n",
      "i =  4136\n",
      "i =  4137\n",
      "i =  4138\n",
      "i =  4139\n",
      "i =  4140\n",
      "i =  4141\n",
      "i =  4142\n",
      "i =  4143\n",
      "i =  4144\n",
      "i =  4145\n",
      "i =  4146\n",
      "i =  4147\n",
      "i =  4148\n",
      "i =  4149\n",
      "i =  4150\n",
      "i =  4151\n",
      "i =  4152\n",
      "i =  4153\n",
      "i =  4154\n",
      "i =  4155\n",
      "i =  4156\n",
      "i =  4157\n",
      "i =  4158\n",
      "i =  4159\n",
      "i =  4160\n",
      "i =  4161\n",
      "i =  4162\n",
      "i =  4163\n",
      "i =  4164\n",
      "i =  4165\n",
      "i =  4166\n",
      "i =  4167\n",
      "i =  4168\n",
      "i =  4169\n",
      "i =  4170\n",
      "i =  4171\n",
      "i =  4172\n",
      "i =  4173\n",
      "i =  4174\n",
      "i =  4175\n",
      "i =  4176\n",
      "i =  4177\n",
      "i =  4178\n",
      "i =  4179\n",
      "i =  4180\n",
      "i =  4181\n",
      "i =  4182\n",
      "i =  4183\n",
      "i =  4184\n",
      "i =  4185\n",
      "i =  4186\n",
      "i =  4187\n",
      "i =  4188\n",
      "i =  4189\n",
      "i =  4190\n",
      "i =  4191\n",
      "i =  4192\n",
      "i =  4193\n",
      "i =  4194\n",
      "i =  4195\n",
      "i =  4196\n",
      "i =  4197\n",
      "i =  4198\n",
      "i =  4199\n",
      "i =  4200\n",
      "i =  4201\n",
      "i =  4202\n",
      "i =  4203\n",
      "i =  4204\n",
      "i =  4205\n",
      "i =  4206\n",
      "i =  4207\n",
      "i =  4208\n",
      "i =  4209\n",
      "i =  4210\n",
      "i =  4211\n",
      "i =  4212\n",
      "i =  4213\n",
      "i =  4214\n",
      "i =  4215\n",
      "i =  4216\n",
      "i =  4217\n",
      "i =  4218\n",
      "i =  4219\n",
      "i =  4220\n",
      "i =  4221\n",
      "i =  4222\n",
      "i =  4223\n",
      "i =  4224\n",
      "i =  4225\n",
      "i =  4226\n",
      "i =  4227\n",
      "i =  4228\n",
      "i =  4229\n",
      "i =  4230\n",
      "i =  4231\n",
      "i =  4232\n",
      "i =  4233\n",
      "i =  4234\n",
      "i =  4235\n",
      "i =  4236\n",
      "i =  4237\n",
      "i =  4238\n",
      "i =  4239\n",
      "i =  4240\n",
      "i =  4241\n",
      "i =  4242\n",
      "i =  4243\n",
      "i =  4244\n",
      "i =  4245\n",
      "i =  4246\n",
      "i =  4247\n",
      "i =  4248\n",
      "i =  4249\n",
      "i =  4250\n",
      "i =  4251\n",
      "i =  4252\n",
      "i =  4253\n",
      "i =  4254\n",
      "i =  4255\n",
      "i =  4256\n",
      "i =  4257\n",
      "i =  4258\n",
      "i =  4259\n",
      "i =  4260\n",
      "i =  4261\n",
      "i =  4262\n",
      "i =  4263\n",
      "i =  4264\n",
      "i =  4265\n",
      "i =  4266\n",
      "i =  4267\n",
      "i =  4268\n",
      "i =  4269\n",
      "i =  4270\n",
      "i =  4271\n",
      "i =  4272\n",
      "i =  4273\n",
      "i =  4274\n",
      "i =  4275\n",
      "i =  4276\n",
      "i =  4277\n",
      "i =  4278\n",
      "i =  4279\n",
      "i =  4280\n",
      "i =  4281\n",
      "i =  4282\n",
      "i =  4283\n",
      "i =  4284\n",
      "i =  4285\n",
      "i =  4286\n",
      "i =  4287\n",
      "i =  4288\n",
      "i =  4289\n",
      "i =  4290\n",
      "i =  4291\n",
      "i =  4292\n",
      "i =  4293\n",
      "i =  4294\n",
      "i =  4295\n",
      "i =  4296\n",
      "i =  4297\n",
      "i =  4298\n",
      "i =  4299\n",
      "i =  4300\n",
      "i =  4301\n",
      "i =  4302\n",
      "i =  4303\n",
      "i =  4304\n",
      "i =  4305\n",
      "i =  4306\n",
      "i =  4307\n",
      "i =  4308\n",
      "i =  4309\n",
      "i =  4310\n",
      "i =  4311\n",
      "i =  4312\n",
      "i =  4313\n",
      "i =  4314\n",
      "i =  4315\n",
      "i =  4316\n",
      "i =  4317\n",
      "i =  4318\n",
      "i =  4319\n",
      "i =  4320\n",
      "i =  4321\n",
      "i =  4322\n",
      "i =  4323\n",
      "i =  4324\n",
      "i =  4325\n",
      "i =  4326\n",
      "i =  4327\n",
      "i =  4328\n",
      "i =  4329\n",
      "i =  4330\n",
      "i =  4331\n",
      "i =  4332\n",
      "i =  4333\n",
      "i =  4334\n",
      "i =  4335\n",
      "i =  4336\n",
      "i =  4337\n",
      "i =  4338\n",
      "i =  4339\n",
      "i =  4340\n",
      "i =  4341\n",
      "i =  4342\n",
      "i =  4343\n",
      "i =  4344\n",
      "i =  4345\n",
      "i =  4346\n",
      "i =  4347\n",
      "i =  4348\n",
      "i =  4349\n",
      "i =  4350\n",
      "i =  4351\n",
      "i =  4352\n",
      "i =  4353\n",
      "i =  4354\n",
      "i =  4355\n",
      "i =  4356\n",
      "i =  4357\n",
      "i =  4358\n",
      "i =  4359\n",
      "i =  4360\n",
      "i =  4361\n",
      "i =  4362\n",
      "i =  4363\n",
      "i =  4364\n",
      "i =  4365\n",
      "i =  4366\n",
      "i =  4367\n",
      "i =  4368\n",
      "i =  4369\n",
      "i =  4370\n",
      "i =  4371\n",
      "i =  4372\n",
      "i =  4373\n",
      "i =  4374\n",
      "i =  4375\n",
      "i =  4376\n",
      "i =  4377\n",
      "i =  4378\n",
      "i =  4379\n",
      "i =  4380\n",
      "i =  4381\n",
      "i =  4382\n",
      "i =  4383\n",
      "i =  4384\n",
      "i =  4385\n",
      "i =  4386\n",
      "i =  4387\n",
      "i =  4388\n",
      "i =  4389\n",
      "i =  4390\n",
      "i =  4391\n",
      "i =  4392\n",
      "i =  4393\n",
      "i =  4394\n",
      "i =  4395\n",
      "i =  4396\n",
      "i =  4397\n",
      "i =  4398\n",
      "i =  4399\n",
      "i =  4400\n",
      "i =  4401\n",
      "i =  4402\n",
      "i =  4403\n",
      "i =  4404\n",
      "i =  4405\n",
      "i =  4406\n",
      "i =  4407\n",
      "i =  4408\n",
      "i =  4409\n",
      "i =  4410\n",
      "i =  4411\n",
      "i =  4412\n",
      "i =  4413\n",
      "i =  4414\n",
      "i =  4415\n",
      "i =  4416\n",
      "i =  4417\n",
      "i =  4418\n",
      "i =  4419\n",
      "i =  4420\n",
      "i =  4421\n",
      "i =  4422\n",
      "i =  4423\n",
      "i =  4424\n",
      "i =  4425\n",
      "i =  4426\n",
      "i =  4427\n",
      "i =  4428\n",
      "i =  4429\n",
      "i =  4430\n",
      "i =  4431\n",
      "i =  4432\n",
      "i =  4433\n",
      "i =  4434\n",
      "i =  4435\n",
      "i =  4436\n",
      "i =  4437\n",
      "i =  4438\n",
      "i =  4439\n",
      "i =  4440\n",
      "i =  4441\n",
      "i =  4442\n",
      "i =  4443\n",
      "i =  4444\n",
      "i =  4445\n",
      "i =  4446\n",
      "i =  4447\n",
      "i =  4448\n",
      "i =  4449\n",
      "i =  4450\n",
      "i =  4451\n",
      "i =  4452\n",
      "i =  4453\n",
      "i =  4454\n",
      "i =  4455\n",
      "i =  4456\n",
      "i =  4457\n",
      "i =  4458\n",
      "i =  4459\n",
      "i =  4460\n",
      "i =  4461\n",
      "i =  4462\n",
      "i =  4463\n",
      "i =  4464\n",
      "i =  4465\n",
      "i =  4466\n",
      "i =  4467\n",
      "i =  4468\n",
      "i =  4469\n",
      "i =  4470\n",
      "i =  4471\n",
      "i =  4472\n",
      "i =  4473\n",
      "i =  4474\n",
      "i =  4475\n",
      "i =  4476\n",
      "i =  4477\n",
      "i =  4478\n",
      "i =  4479\n",
      "i =  4480\n",
      "i =  4481\n",
      "i =  4482\n",
      "i =  4483\n",
      "i =  4484\n",
      "i =  4485\n",
      "i =  4486\n",
      "i =  4487\n",
      "i =  4488\n",
      "i =  4489\n",
      "i =  4490\n",
      "i =  4491\n",
      "i =  4492\n",
      "i =  4493\n",
      "i =  4494\n",
      "i =  4495\n",
      "i =  4496\n",
      "i =  4497\n",
      "i =  4498\n",
      "i =  4499\n",
      "i =  4500\n",
      "i =  4501\n",
      "i =  4502\n",
      "i =  4503\n",
      "i =  4504\n",
      "i =  4505\n",
      "i =  4506\n",
      "i =  4507\n",
      "i =  4508\n",
      "i =  4509\n",
      "i =  4510\n",
      "i =  4511\n",
      "i =  4512\n",
      "i =  4513\n",
      "i =  4514\n",
      "i =  4515\n",
      "i =  4516\n",
      "i =  4517\n",
      "i =  4518\n",
      "i =  4519\n",
      "i =  4520\n",
      "i =  4521\n",
      "i =  4522\n",
      "i =  4523\n",
      "i =  4524\n",
      "i =  4525\n",
      "i =  4526\n",
      "i =  4527\n",
      "i =  4528\n",
      "i =  4529\n",
      "i =  4530\n",
      "i =  4531\n",
      "i =  4532\n",
      "i =  4533\n",
      "i =  4534\n",
      "i =  4535\n",
      "i =  4536\n",
      "i =  4537\n",
      "i =  4538\n",
      "i =  4539\n",
      "i =  4540\n",
      "i =  4541\n",
      "i =  4542\n",
      "i =  4543\n",
      "i =  4544\n",
      "i =  4545\n",
      "i =  4546\n",
      "i =  4547\n",
      "i =  4548\n",
      "i =  4549\n",
      "i =  4550\n",
      "i =  4551\n",
      "i =  4552\n",
      "i =  4553\n",
      "i =  4554\n",
      "i =  4555\n",
      "i =  4556\n",
      "i =  4557\n",
      "i =  4558\n",
      "i =  4559\n",
      "i =  4560\n",
      "i =  4561\n",
      "i =  4562\n",
      "i =  4563\n",
      "i =  4564\n",
      "i =  4565\n",
      "i =  4566\n",
      "i =  4567\n",
      "i =  4568\n",
      "i =  4569\n",
      "i =  4570\n",
      "i =  4571\n",
      "i =  4572\n",
      "i =  4573\n",
      "i =  4574\n",
      "i =  4575\n",
      "i =  4576\n",
      "i =  4577\n",
      "i =  4578\n",
      "i =  4579\n",
      "i =  4580\n",
      "i =  4581\n",
      "i =  4582\n",
      "i =  4583\n",
      "i =  4584\n",
      "i =  4585\n",
      "i =  4586\n",
      "i =  4587\n",
      "i =  4588\n",
      "i =  4589\n",
      "i =  4590\n",
      "i =  4591\n",
      "i =  4592\n",
      "i =  4593\n",
      "i =  4594\n",
      "i =  4595\n",
      "i =  4596\n",
      "i =  4597\n",
      "i =  4598\n",
      "i =  4599\n",
      "i =  4600\n",
      "i =  4601\n",
      "i =  4602\n",
      "i =  4603\n",
      "i =  4604\n",
      "i =  4605\n",
      "i =  4606\n",
      "i =  4607\n",
      "i =  4608\n",
      "i =  4609\n",
      "i =  4610\n",
      "i =  4611\n",
      "i =  4612\n",
      "i =  4613\n",
      "i =  4614\n",
      "i =  4615\n",
      "i =  4616\n",
      "i =  4617\n",
      "i =  4618\n",
      "i =  4619\n",
      "i =  4620\n",
      "i =  4621\n",
      "i =  4622\n",
      "i =  4623\n",
      "i =  4624\n",
      "i =  4625\n",
      "i =  4626\n",
      "i =  4627\n",
      "i =  4628\n",
      "i =  4629\n",
      "i =  4630\n",
      "i =  4631\n",
      "i =  4632\n",
      "i =  4633\n",
      "i =  4634\n",
      "i =  4635\n",
      "i =  4636\n",
      "i =  4637\n",
      "i =  4638\n",
      "i =  4639\n",
      "i =  4640\n",
      "i =  4641\n",
      "i =  4642\n",
      "i =  4643\n",
      "i =  4644\n",
      "i =  4645\n",
      "i =  4646\n",
      "i =  4647\n",
      "i =  4648\n",
      "i =  4649\n",
      "i =  4650\n",
      "i =  4651\n",
      "i =  4652\n",
      "i =  4653\n",
      "i =  4654\n",
      "i =  4655\n",
      "i =  4656\n",
      "i =  4657\n",
      "i =  4658\n",
      "i =  4659\n",
      "i =  4660\n",
      "i =  4661\n",
      "i =  4662\n",
      "i =  4663\n",
      "i =  4664\n",
      "i =  4665\n",
      "i =  4666\n",
      "i =  4667\n",
      "i =  4668\n",
      "i =  4669\n",
      "i =  4670\n",
      "i =  4671\n",
      "i =  4672\n",
      "i =  4673\n",
      "i =  4674\n",
      "i =  4675\n",
      "i =  4676\n",
      "i =  4677\n",
      "i =  4678\n",
      "i =  4679\n",
      "i =  4680\n",
      "i =  4681\n",
      "i =  4682\n",
      "i =  4683\n",
      "i =  4684\n",
      "i =  4685\n",
      "i =  4686\n",
      "i =  4687\n",
      "i =  4688\n",
      "i =  4689\n",
      "i =  4690\n",
      "i =  4691\n",
      "i =  4692\n",
      "i =  4693\n",
      "i =  4694\n",
      "i =  4695\n",
      "i =  4696\n",
      "i =  4697\n",
      "i =  4698\n",
      "i =  4699\n",
      "i =  4700\n",
      "i =  4701\n",
      "i =  4702\n",
      "i =  4703\n",
      "i =  4704\n",
      "i =  4705\n",
      "i =  4706\n",
      "i =  4707\n",
      "i =  4708\n",
      "i =  4709\n",
      "i =  4710\n",
      "i =  4711\n",
      "i =  4712\n",
      "i =  4713\n",
      "i =  4714\n",
      "i =  4715\n",
      "i =  4716\n",
      "i =  4717\n",
      "i =  4718\n",
      "i =  4719\n",
      "i =  4720\n",
      "i =  4721\n",
      "i =  4722\n",
      "i =  4723\n",
      "i =  4724\n",
      "i =  4725\n",
      "i =  4726\n",
      "i =  4727\n",
      "i =  4728\n",
      "i =  4729\n",
      "i =  4730\n",
      "i =  4731\n",
      "i =  4732\n",
      "i =  4733\n",
      "i =  4734\n",
      "i =  4735\n",
      "i =  4736\n",
      "i =  4737\n",
      "i =  4738\n",
      "i =  4739\n",
      "i =  4740\n",
      "i =  4741\n",
      "i =  4742\n",
      "i =  4743\n",
      "i =  4744\n",
      "i =  4745\n",
      "i =  4746\n",
      "i =  4747\n",
      "i =  4748\n",
      "i =  4749\n",
      "i =  4750\n",
      "i =  4751\n",
      "i =  4752\n",
      "i =  4753\n",
      "i =  4754\n",
      "i =  4755\n",
      "i =  4756\n",
      "i =  4757\n",
      "i =  4758\n",
      "i =  4759\n",
      "i =  4760\n",
      "i =  4761\n",
      "i =  4762\n",
      "i =  4763\n",
      "i =  4764\n",
      "i =  4765\n",
      "i =  4766\n",
      "i =  4767\n",
      "i =  4768\n",
      "i =  4769\n",
      "i =  4770\n",
      "i =  4771\n",
      "i =  4772\n",
      "i =  4773\n",
      "i =  4774\n",
      "i =  4775\n",
      "i =  4776\n",
      "i =  4777\n",
      "i =  4778\n",
      "i =  4779\n",
      "i =  4780\n",
      "i =  4781\n",
      "i =  4782\n",
      "i =  4783\n",
      "i =  4784\n",
      "i =  4785\n",
      "i =  4786\n",
      "i =  4787\n",
      "i =  4788\n",
      "i =  4789\n",
      "i =  4790\n",
      "i =  4791\n",
      "i =  4792\n",
      "i =  4793\n",
      "i =  4794\n",
      "i =  4795\n",
      "i =  4796\n",
      "i =  4797\n",
      "i =  4798\n",
      "i =  4799\n",
      "i =  4800\n",
      "i =  4801\n",
      "i =  4802\n",
      "i =  4803\n",
      "i =  4804\n",
      "i =  4805\n",
      "i =  4806\n",
      "i =  4807\n",
      "i =  4808\n",
      "i =  4809\n",
      "i =  4810\n",
      "i =  4811\n",
      "i =  4812\n",
      "i =  4813\n",
      "i =  4814\n",
      "i =  4815\n",
      "i =  4816\n",
      "i =  4817\n",
      "i =  4818\n",
      "i =  4819\n",
      "i =  4820\n",
      "i =  4821\n",
      "i =  4822\n",
      "i =  4823\n",
      "i =  4824\n",
      "i =  4825\n",
      "i =  4826\n",
      "i =  4827\n",
      "i =  4828\n",
      "i =  4829\n",
      "i =  4830\n",
      "i =  4831\n",
      "i =  4832\n",
      "i =  4833\n",
      "i =  4834\n",
      "i =  4835\n",
      "i =  4836\n",
      "i =  4837\n",
      "i =  4838\n",
      "i =  4839\n",
      "i =  4840\n",
      "i =  4841\n",
      "i =  4842\n",
      "i =  4843\n",
      "i =  4844\n",
      "i =  4845\n",
      "i =  4846\n",
      "i =  4847\n",
      "i =  4848\n",
      "i =  4849\n",
      "i =  4850\n",
      "i =  4851\n",
      "i =  4852\n",
      "i =  4853\n",
      "i =  4854\n",
      "i =  4855\n",
      "i =  4856\n",
      "i =  4857\n",
      "i =  4858\n",
      "i =  4859\n",
      "i =  4860\n",
      "i =  4861\n",
      "i =  4862\n",
      "i =  4863\n",
      "i =  4864\n",
      "i =  4865\n",
      "i =  4866\n",
      "i =  4867\n",
      "i =  4868\n",
      "i =  4869\n",
      "i =  4870\n",
      "i =  4871\n",
      "i =  4872\n",
      "i =  4873\n",
      "i =  4874\n",
      "i =  4875\n",
      "i =  4876\n",
      "i =  4877\n",
      "i =  4878\n",
      "i =  4879\n",
      "i =  4880\n",
      "i =  4881\n",
      "i =  4882\n",
      "i =  4883\n",
      "i =  4884\n",
      "i =  4885\n",
      "i =  4886\n",
      "i =  4887\n",
      "i =  4888\n",
      "i =  4889\n",
      "i =  4890\n",
      "i =  4891\n",
      "i =  4892\n",
      "i =  4893\n",
      "i =  4894\n",
      "i =  4895\n",
      "i =  4896\n",
      "i =  4897\n",
      "i =  4898\n",
      "i =  4899\n",
      "i =  4900\n",
      "i =  4901\n",
      "i =  4902\n",
      "i =  4903\n",
      "i =  4904\n",
      "i =  4905\n",
      "i =  4906\n",
      "i =  4907\n",
      "i =  4908\n",
      "i =  4909\n",
      "i =  4910\n",
      "i =  4911\n",
      "i =  4912\n",
      "i =  4913\n",
      "i =  4914\n",
      "i =  4915\n",
      "i =  4916\n",
      "i =  4917\n",
      "i =  4918\n",
      "i =  4919\n",
      "i =  4920\n",
      "i =  4921\n",
      "i =  4922\n",
      "i =  4923\n",
      "i =  4924\n",
      "i =  4925\n",
      "i =  4926\n",
      "i =  4927\n",
      "i =  4928\n",
      "i =  4929\n",
      "i =  4930\n",
      "i =  4931\n",
      "i =  4932\n",
      "i =  4933\n",
      "i =  4934\n",
      "i =  4935\n",
      "i =  4936\n",
      "i =  4937\n",
      "i =  4938\n",
      "i =  4939\n",
      "i =  4940\n",
      "i =  4941\n",
      "i =  4942\n",
      "i =  4943\n",
      "i =  4944\n",
      "i =  4945\n",
      "i =  4946\n",
      "i =  4947\n",
      "i =  4948\n",
      "i =  4949\n",
      "i =  4950\n",
      "i =  4951\n",
      "i =  4952\n",
      "i =  4953\n",
      "i =  4954\n",
      "i =  4955\n",
      "i =  4956\n",
      "i =  4957\n",
      "i =  4958\n",
      "i =  4959\n",
      "i =  4960\n",
      "i =  4961\n",
      "i =  4962\n",
      "i =  4963\n",
      "i =  4964\n",
      "i =  4965\n",
      "i =  4966\n",
      "i =  4967\n",
      "i =  4968\n",
      "i =  4969\n",
      "i =  4970\n",
      "i =  4971\n",
      "i =  4972\n",
      "i =  4973\n",
      "i =  4974\n",
      "i =  4975\n",
      "i =  4976\n",
      "i =  4977\n",
      "i =  4978\n",
      "i =  4979\n",
      "i =  4980\n",
      "i =  4981\n",
      "i =  4982\n",
      "i =  4983\n",
      "i =  4984\n",
      "i =  4985\n",
      "i =  4986\n",
      "i =  4987\n",
      "i =  4988\n",
      "i =  4989\n",
      "i =  4990\n",
      "i =  4991\n",
      "i =  4992\n",
      "i =  4993\n",
      "i =  4994\n",
      "i =  4995\n",
      "i =  4996\n",
      "i =  4997\n",
      "i =  4998\n",
      "i =  4999\n",
      "i =  5000\n",
      "i =  5001\n",
      "i =  5002\n",
      "i =  5003\n",
      "i =  5004\n",
      "i =  5005\n",
      "i =  5006\n",
      "i =  5007\n",
      "i =  5008\n",
      "i =  5009\n",
      "i =  5010\n",
      "i =  5011\n",
      "i =  5012\n",
      "i =  5013\n",
      "i =  5014\n",
      "i =  5015\n",
      "i =  5016\n",
      "i =  5017\n",
      "i =  5018\n",
      "i =  5019\n",
      "i =  5020\n",
      "i =  5021\n",
      "i =  5022\n",
      "i =  5023\n",
      "i =  5024\n",
      "i =  5025\n",
      "i =  5026\n",
      "i =  5027\n",
      "i =  5028\n",
      "i =  5029\n",
      "i =  5030\n",
      "i =  5031\n",
      "i =  5032\n",
      "i =  5033\n",
      "i =  5034\n",
      "i =  5035\n",
      "i =  5036\n",
      "i =  5037\n",
      "i =  5038\n",
      "i =  5039\n",
      "i =  5040\n",
      "i =  5041\n",
      "i =  5042\n",
      "i =  5043\n",
      "i =  5044\n",
      "i =  5045\n",
      "i =  5046\n",
      "i =  5047\n",
      "i =  5048\n",
      "i =  5049\n",
      "i =  5050\n",
      "i =  5051\n",
      "i =  5052\n",
      "i =  5053\n",
      "i =  5054\n",
      "i =  5055\n",
      "i =  5056\n",
      "i =  5057\n",
      "i =  5058\n",
      "i =  5059\n",
      "i =  5060\n",
      "i =  5061\n",
      "i =  5062\n",
      "i =  5063\n",
      "i =  5064\n",
      "i =  5065\n",
      "i =  5066\n",
      "i =  5067\n",
      "i =  5068\n",
      "i =  5069\n",
      "i =  5070\n",
      "i =  5071\n",
      "i =  5072\n",
      "i =  5073\n",
      "i =  5074\n",
      "i =  5075\n",
      "i =  5076\n",
      "i =  5077\n",
      "i =  5078\n",
      "i =  5079\n",
      "i =  5080\n",
      "i =  5081\n",
      "i =  5082\n",
      "i =  5083\n",
      "i =  5084\n",
      "i =  5085\n",
      "i =  5086\n",
      "i =  5087\n",
      "i =  5088\n",
      "i =  5089\n",
      "i =  5090\n",
      "i =  5091\n",
      "i =  5092\n",
      "i =  5093\n",
      "i =  5094\n",
      "i =  5095\n",
      "i =  5096\n",
      "i =  5097\n",
      "i =  5098\n",
      "i =  5099\n",
      "i =  5100\n",
      "i =  5101\n",
      "i =  5102\n",
      "i =  5103\n",
      "i =  5104\n",
      "i =  5105\n",
      "i =  5106\n",
      "i =  5107\n",
      "i =  5108\n",
      "i =  5109\n",
      "i =  5110\n",
      "i =  5111\n",
      "i =  5112\n",
      "i =  5113\n",
      "i =  5114\n",
      "i =  5115\n",
      "i =  5116\n",
      "i =  5117\n",
      "i =  5118\n",
      "i =  5119\n",
      "i =  5120\n",
      "i =  5121\n",
      "i =  5122\n",
      "i =  5123\n",
      "i =  5124\n",
      "i =  5125\n",
      "i =  5126\n",
      "i =  5127\n",
      "i =  5128\n",
      "i =  5129\n",
      "i =  5130\n",
      "i =  5131\n",
      "i =  5132\n",
      "i =  5133\n",
      "i =  5134\n",
      "i =  5135\n",
      "i =  5136\n",
      "i =  5137\n",
      "i =  5138\n",
      "i =  5139\n",
      "i =  5140\n",
      "i =  5141\n",
      "i =  5142\n",
      "i =  5143\n",
      "i =  5144\n",
      "i =  5145\n",
      "i =  5146\n",
      "i =  5147\n",
      "i =  5148\n",
      "i =  5149\n",
      "i =  5150\n",
      "i =  5151\n",
      "i =  5152\n",
      "i =  5153\n",
      "i =  5154\n",
      "i =  5155\n",
      "i =  5156\n",
      "i =  5157\n",
      "i =  5158\n",
      "i =  5159\n",
      "i =  5160\n",
      "i =  5161\n",
      "i =  5162\n",
      "i =  5163\n",
      "i =  5164\n",
      "i =  5165\n",
      "i =  5166\n",
      "i =  5167\n",
      "i =  5168\n",
      "i =  5169\n",
      "i =  5170\n",
      "i =  5171\n",
      "i =  5172\n",
      "i =  5173\n",
      "i =  5174\n",
      "i =  5175\n",
      "i =  5176\n",
      "i =  5177\n",
      "i =  5178\n",
      "i =  5179\n",
      "i =  5180\n",
      "i =  5181\n",
      "i =  5182\n",
      "i =  5183\n",
      "i =  5184\n",
      "i =  5185\n",
      "i =  5186\n",
      "i =  5187\n",
      "i =  5188\n",
      "i =  5189\n",
      "i =  5190\n",
      "i =  5191\n",
      "i =  5192\n",
      "i =  5193\n",
      "i =  5194\n",
      "i =  5195\n",
      "i =  5196\n",
      "i =  5197\n",
      "i =  5198\n",
      "i =  5199\n",
      "i =  5200\n",
      "i =  5201\n",
      "i =  5202\n",
      "i =  5203\n",
      "i =  5204\n",
      "i =  5205\n",
      "i =  5206\n",
      "i =  5207\n",
      "i =  5208\n",
      "i =  5209\n",
      "i =  5210\n",
      "i =  5211\n",
      "i =  5212\n",
      "i =  5213\n",
      "i =  5214\n",
      "i =  5215\n",
      "i =  5216\n",
      "i =  5217\n",
      "i =  5218\n",
      "i =  5219\n",
      "i =  5220\n",
      "i =  5221\n",
      "i =  5222\n",
      "i =  5223\n",
      "i =  5224\n",
      "i =  5225\n",
      "i =  5226\n",
      "i =  5227\n",
      "i =  5228\n",
      "i =  5229\n",
      "i =  5230\n",
      "i =  5231\n",
      "i =  5232\n",
      "i =  5233\n",
      "i =  5234\n",
      "i =  5235\n",
      "i =  5236\n",
      "i =  5237\n",
      "i =  5238\n",
      "i =  5239\n",
      "i =  5240\n",
      "i =  5241\n",
      "i =  5242\n",
      "i =  5243\n",
      "i =  5244\n",
      "i =  5245\n",
      "i =  5246\n",
      "i =  5247\n",
      "i =  5248\n",
      "i =  5249\n",
      "i =  5250\n",
      "i =  5251\n",
      "i =  5252\n",
      "i =  5253\n",
      "i =  5254\n",
      "i =  5255\n",
      "i =  5256\n",
      "i =  5257\n",
      "i =  5258\n",
      "i =  5259\n",
      "i =  5260\n",
      "i =  5261\n",
      "i =  5262\n",
      "i =  5263\n",
      "i =  5264\n",
      "i =  5265\n",
      "i =  5266\n",
      "i =  5267\n",
      "i =  5268\n",
      "i =  5269\n",
      "i =  5270\n",
      "i =  5271\n",
      "i =  5272\n",
      "i =  5273\n",
      "i =  5274\n",
      "i =  5275\n",
      "i =  5276\n",
      "i =  5277\n",
      "i =  5278\n",
      "i =  5279\n",
      "i =  5280\n",
      "i =  5281\n",
      "i =  5282\n",
      "i =  5283\n",
      "i =  5284\n",
      "i =  5285\n",
      "i =  5286\n",
      "i =  5287\n",
      "i =  5288\n",
      "i =  5289\n",
      "i =  5290\n",
      "i =  5291\n",
      "i =  5292\n",
      "i =  5293\n",
      "i =  5294\n",
      "i =  5295\n",
      "i =  5296\n",
      "i =  5297\n",
      "i =  5298\n",
      "i =  5299\n",
      "i =  5300\n",
      "i =  5301\n",
      "i =  5302\n",
      "i =  5303\n",
      "i =  5304\n",
      "i =  5305\n",
      "i =  5306\n",
      "i =  5307\n",
      "i =  5308\n",
      "i =  5309\n",
      "i =  5310\n",
      "i =  5311\n",
      "i =  5312\n",
      "i =  5313\n",
      "i =  5314\n",
      "i =  5315\n",
      "i =  5316\n",
      "i =  5317\n",
      "i =  5318\n",
      "i =  5319\n",
      "i =  5320\n",
      "i =  5321\n",
      "i =  5322\n",
      "i =  5323\n",
      "i =  5324\n",
      "i =  5325\n",
      "i =  5326\n",
      "i =  5327\n",
      "i =  5328\n",
      "i =  5329\n",
      "i =  5330\n",
      "i =  5331\n",
      "i =  5332\n",
      "i =  5333\n",
      "i =  5334\n",
      "i =  5335\n",
      "i =  5336\n",
      "i =  5337\n",
      "i =  5338\n",
      "i =  5339\n",
      "i =  5340\n",
      "i =  5341\n",
      "i =  5342\n",
      "i =  5343\n",
      "i =  5344\n",
      "i =  5345\n",
      "i =  5346\n",
      "i =  5347\n",
      "i =  5348\n",
      "i =  5349\n",
      "i =  5350\n",
      "i =  5351\n",
      "i =  5352\n",
      "i =  5353\n",
      "i =  5354\n",
      "i =  5355\n",
      "i =  5356\n",
      "i =  5357\n",
      "i =  5358\n",
      "i =  5359\n",
      "i =  5360\n",
      "i =  5361\n",
      "i =  5362\n",
      "i =  5363\n",
      "i =  5364\n",
      "i =  5365\n",
      "i =  5366\n",
      "i =  5367\n",
      "i =  5368\n",
      "i =  5369\n",
      "i =  5370\n",
      "i =  5371\n",
      "i =  5372\n",
      "i =  5373\n",
      "i =  5374\n",
      "i =  5375\n",
      "i =  5376\n",
      "i =  5377\n",
      "i =  5378\n",
      "i =  5379\n",
      "i =  5380\n",
      "i =  5381\n",
      "i =  5382\n",
      "i =  5383\n",
      "i =  5384\n",
      "i =  5385\n",
      "i =  5386\n",
      "i =  5387\n",
      "i =  5388\n",
      "i =  5389\n",
      "i =  5390\n",
      "i =  5391\n",
      "i =  5392\n",
      "i =  5393\n",
      "i =  5394\n",
      "i =  5395\n",
      "i =  5396\n",
      "i =  5397\n",
      "i =  5398\n",
      "i =  5399\n",
      "i =  5400\n",
      "i =  5401\n",
      "i =  5402\n",
      "i =  5403\n",
      "i =  5404\n",
      "i =  5405\n",
      "i =  5406\n",
      "i =  5407\n",
      "i =  5408\n",
      "i =  5409\n",
      "i =  5410\n",
      "i =  5411\n",
      "i =  5412\n",
      "i =  5413\n",
      "i =  5414\n",
      "i =  5415\n",
      "i =  5416\n",
      "i =  5417\n",
      "i =  5418\n",
      "i =  5419\n",
      "i =  5420\n",
      "i =  5421\n",
      "i =  5422\n",
      "i =  5423\n",
      "i =  5424\n",
      "i =  5425\n",
      "i =  5426\n",
      "i =  5427\n",
      "i =  5428\n",
      "i =  5429\n",
      "i =  5430\n",
      "i =  5431\n",
      "i =  5432\n",
      "i =  5433\n",
      "i =  5434\n",
      "i =  5435\n",
      "i =  5436\n",
      "i =  5437\n",
      "i =  5438\n",
      "i =  5439\n",
      "i =  5440\n",
      "i =  5441\n",
      "i =  5442\n",
      "i =  5443\n",
      "i =  5444\n",
      "i =  5445\n",
      "i =  5446\n",
      "i =  5447\n",
      "i =  5448\n",
      "i =  5449\n",
      "i =  5450\n",
      "i =  5451\n",
      "i =  5452\n",
      "i =  5453\n",
      "i =  5454\n",
      "i =  5455\n",
      "i =  5456\n",
      "i =  5457\n",
      "i =  5458\n",
      "i =  5459\n",
      "i =  5460\n",
      "i =  5461\n",
      "i =  5462\n",
      "i =  5463\n",
      "i =  5464\n",
      "i =  5465\n",
      "i =  5466\n",
      "i =  5467\n",
      "i =  5468\n",
      "i =  5469\n",
      "i =  5470\n",
      "i =  5471\n",
      "i =  5472\n",
      "i =  5473\n",
      "i =  5474\n",
      "i =  5475\n",
      "i =  5476\n",
      "i =  5477\n",
      "i =  5478\n",
      "i =  5479\n",
      "i =  5480\n",
      "i =  5481\n",
      "i =  5482\n",
      "i =  5483\n",
      "i =  5484\n",
      "i =  5485\n",
      "i =  5486\n",
      "i =  5487\n",
      "i =  5488\n",
      "i =  5489\n",
      "i =  5490\n",
      "i =  5491\n",
      "i =  5492\n",
      "i =  5493\n",
      "i =  5494\n",
      "i =  5495\n",
      "i =  5496\n",
      "i =  5497\n",
      "i =  5498\n",
      "i =  5499\n",
      "i =  5500\n",
      "i =  5501\n",
      "i =  5502\n",
      "i =  5503\n",
      "i =  5504\n",
      "i =  5505\n",
      "i =  5506\n",
      "i =  5507\n",
      "i =  5508\n",
      "i =  5509\n",
      "i =  5510\n",
      "i =  5511\n",
      "i =  5512\n",
      "i =  5513\n",
      "i =  5514\n",
      "i =  5515\n",
      "i =  5516\n",
      "i =  5517\n",
      "i =  5518\n",
      "i =  5519\n",
      "i =  5520\n",
      "i =  5521\n",
      "i =  5522\n",
      "i =  5523\n",
      "i =  5524\n",
      "i =  5525\n",
      "i =  5526\n",
      "i =  5527\n",
      "i =  5528\n",
      "i =  5529\n",
      "i =  5530\n",
      "i =  5531\n",
      "i =  5532\n",
      "i =  5533\n",
      "i =  5534\n",
      "i =  5535\n",
      "i =  5536\n",
      "i =  5537\n",
      "i =  5538\n",
      "i =  5539\n",
      "i =  5540\n",
      "i =  5541\n",
      "i =  5542\n",
      "i =  5543\n",
      "i =  5544\n",
      "i =  5545\n",
      "i =  5546\n",
      "i =  5547\n",
      "i =  5548\n",
      "i =  5549\n",
      "i =  5550\n",
      "i =  5551\n",
      "i =  5552\n",
      "i =  5553\n",
      "i =  5554\n",
      "i =  5555\n",
      "i =  5556\n",
      "i =  5557\n",
      "i =  5558\n",
      "i =  5559\n",
      "i =  5560\n",
      "i =  5561\n",
      "i =  5562\n",
      "i =  5563\n",
      "i =  5564\n",
      "i =  5565\n",
      "i =  5566\n",
      "i =  5567\n",
      "i =  5568\n",
      "i =  5569\n",
      "i =  5570\n",
      "i =  5571\n",
      "i =  5572\n",
      "i =  5573\n",
      "i =  5574\n",
      "i =  5575\n",
      "i =  5576\n",
      "i =  5577\n",
      "i =  5578\n",
      "i =  5579\n",
      "i =  5580\n",
      "i =  5581\n",
      "i =  5582\n",
      "i =  5583\n",
      "i =  5584\n",
      "i =  5585\n",
      "i =  5586\n",
      "i =  5587\n",
      "i =  5588\n",
      "i =  5589\n",
      "i =  5590\n",
      "i =  5591\n",
      "i =  5592\n",
      "i =  5593\n",
      "i =  5594\n",
      "i =  5595\n",
      "i =  5596\n",
      "i =  5597\n",
      "i =  5598\n",
      "i =  5599\n",
      "i =  5600\n",
      "i =  5601\n",
      "i =  5602\n",
      "i =  5603\n",
      "i =  5604\n",
      "i =  5605\n",
      "i =  5606\n",
      "i =  5607\n",
      "i =  5608\n",
      "i =  5609\n",
      "i =  5610\n",
      "i =  5611\n",
      "i =  5612\n",
      "i =  5613\n",
      "i =  5614\n",
      "i =  5615\n",
      "i =  5616\n",
      "i =  5617\n",
      "i =  5618\n",
      "i =  5619\n",
      "i =  5620\n",
      "i =  5621\n",
      "i =  5622\n",
      "i =  5623\n",
      "i =  5624\n",
      "i =  5625\n",
      "i =  5626\n",
      "i =  5627\n",
      "i =  5628\n",
      "i =  5629\n",
      "i =  5630\n",
      "i =  5631\n",
      "i =  5632\n",
      "i =  5633\n",
      "i =  5634\n",
      "i =  5635\n",
      "i =  5636\n",
      "i =  5637\n",
      "i =  5638\n",
      "i =  5639\n",
      "i =  5640\n",
      "i =  5641\n",
      "i =  5642\n",
      "i =  5643\n",
      "i =  5644\n",
      "i =  5645\n",
      "i =  5646\n",
      "i =  5647\n",
      "i =  5648\n",
      "i =  5649\n",
      "i =  5650\n",
      "i =  5651\n",
      "i =  5652\n",
      "i =  5653\n",
      "i =  5654\n",
      "i =  5655\n",
      "i =  5656\n",
      "i =  5657\n",
      "i =  5658\n",
      "i =  5659\n",
      "i =  5660\n",
      "i =  5661\n",
      "i =  5662\n",
      "i =  5663\n",
      "i =  5664\n",
      "i =  5665\n",
      "i =  5666\n",
      "i =  5667\n",
      "i =  5668\n",
      "i =  5669\n",
      "i =  5670\n",
      "i =  5671\n",
      "i =  5672\n",
      "i =  5673\n",
      "i =  5674\n",
      "i =  5675\n",
      "i =  5676\n",
      "i =  5677\n",
      "i =  5678\n",
      "i =  5679\n",
      "i =  5680\n",
      "i =  5681\n",
      "i =  5682\n",
      "i =  5683\n",
      "i =  5684\n",
      "i =  5685\n",
      "i =  5686\n",
      "i =  5687\n",
      "i =  5688\n",
      "i =  5689\n",
      "i =  5690\n",
      "i =  5691\n",
      "i =  5692\n",
      "i =  5693\n",
      "i =  5694\n",
      "i =  5695\n",
      "i =  5696\n",
      "i =  5697\n",
      "i =  5698\n",
      "i =  5699\n",
      "i =  5700\n",
      "i =  5701\n",
      "i =  5702\n",
      "i =  5703\n",
      "i =  5704\n",
      "i =  5705\n",
      "i =  5706\n",
      "i =  5707\n",
      "i =  5708\n",
      "i =  5709\n",
      "i =  5710\n",
      "i =  5711\n",
      "i =  5712\n",
      "i =  5713\n",
      "i =  5714\n",
      "i =  5715\n",
      "i =  5716\n",
      "i =  5717\n",
      "i =  5718\n",
      "i =  5719\n",
      "i =  5720\n",
      "i =  5721\n",
      "i =  5722\n",
      "i =  5723\n",
      "i =  5724\n",
      "i =  5725\n",
      "i =  5726\n",
      "i =  5727\n",
      "i =  5728\n",
      "i =  5729\n",
      "i =  5730\n",
      "i =  5731\n",
      "i =  5732\n",
      "i =  5733\n",
      "i =  5734\n",
      "i =  5735\n",
      "i =  5736\n",
      "i =  5737\n",
      "i =  5738\n",
      "i =  5739\n",
      "i =  5740\n",
      "i =  5741\n",
      "i =  5742\n",
      "i =  5743\n",
      "i =  5744\n",
      "i =  5745\n",
      "i =  5746\n",
      "i =  5747\n",
      "i =  5748\n",
      "i =  5749\n",
      "i =  5750\n",
      "i =  5751\n",
      "i =  5752\n",
      "i =  5753\n",
      "i =  5754\n",
      "i =  5755\n",
      "i =  5756\n",
      "i =  5757\n",
      "i =  5758\n",
      "i =  5759\n",
      "i =  5760\n",
      "i =  5761\n",
      "i =  5762\n",
      "i =  5763\n",
      "i =  5764\n",
      "i =  5765\n",
      "i =  5766\n",
      "i =  5767\n",
      "i =  5768\n",
      "i =  5769\n",
      "i =  5770\n",
      "i =  5771\n",
      "i =  5772\n",
      "i =  5773\n",
      "i =  5774\n",
      "i =  5775\n",
      "i =  5776\n",
      "i =  5777\n",
      "i =  5778\n",
      "i =  5779\n",
      "i =  5780\n",
      "i =  5781\n",
      "i =  5782\n",
      "i =  5783\n",
      "i =  5784\n",
      "i =  5785\n",
      "i =  5786\n",
      "i =  5787\n",
      "i =  5788\n",
      "i =  5789\n",
      "i =  5790\n",
      "i =  5791\n",
      "i =  5792\n",
      "i =  5793\n",
      "i =  5794\n",
      "i =  5795\n",
      "i =  5796\n",
      "i =  5797\n",
      "i =  5798\n",
      "i =  5799\n",
      "i =  5800\n",
      "i =  5801\n",
      "i =  5802\n",
      "i =  5803\n",
      "i =  5804\n",
      "i =  5805\n",
      "i =  5806\n",
      "i =  5807\n",
      "i =  5808\n",
      "i =  5809\n",
      "i =  5810\n",
      "i =  5811\n",
      "i =  5812\n",
      "i =  5813\n",
      "i =  5814\n",
      "i =  5815\n",
      "i =  5816\n",
      "i =  5817\n",
      "i =  5818\n",
      "i =  5819\n",
      "i =  5820\n",
      "i =  5821\n",
      "i =  5822\n",
      "i =  5823\n",
      "i =  5824\n",
      "i =  5825\n",
      "i =  5826\n",
      "i =  5827\n",
      "i =  5828\n",
      "i =  5829\n",
      "i =  5830\n",
      "i =  5831\n",
      "i =  5832\n",
      "i =  5833\n",
      "i =  5834\n",
      "i =  5835\n",
      "i =  5836\n",
      "i =  5837\n",
      "i =  5838\n",
      "i =  5839\n",
      "i =  5840\n",
      "i =  5841\n",
      "i =  5842\n",
      "i =  5843\n",
      "i =  5844\n",
      "i =  5845\n",
      "i =  5846\n",
      "i =  5847\n",
      "i =  5848\n",
      "i =  5849\n",
      "i =  5850\n",
      "i =  5851\n",
      "i =  5852\n",
      "i =  5853\n",
      "i =  5854\n",
      "i =  5855\n",
      "i =  5856\n",
      "i =  5857\n",
      "i =  5858\n",
      "i =  5859\n",
      "i =  5860\n",
      "i =  5861\n",
      "i =  5862\n",
      "i =  5863\n",
      "i =  5864\n",
      "i =  5865\n",
      "i =  5866\n",
      "i =  5867\n",
      "i =  5868\n",
      "i =  5869\n",
      "i =  5870\n",
      "i =  5871\n",
      "i =  5872\n",
      "i =  5873\n",
      "i =  5874\n",
      "i =  5875\n",
      "i =  5876\n",
      "i =  5877\n",
      "i =  5878\n",
      "i =  5879\n",
      "i =  5880\n",
      "i =  5881\n",
      "i =  5882\n",
      "i =  5883\n",
      "i =  5884\n",
      "i =  5885\n",
      "i =  5886\n",
      "i =  5887\n",
      "i =  5888\n",
      "i =  5889\n",
      "i =  5890\n",
      "i =  5891\n",
      "i =  5892\n",
      "i =  5893\n",
      "i =  5894\n",
      "i =  5895\n",
      "i =  5896\n",
      "i =  5897\n",
      "i =  5898\n",
      "i =  5899\n",
      "i =  5900\n",
      "i =  5901\n",
      "i =  5902\n",
      "i =  5903\n",
      "i =  5904\n",
      "i =  5905\n",
      "i =  5906\n",
      "i =  5907\n",
      "i =  5908\n",
      "i =  5909\n",
      "i =  5910\n",
      "i =  5911\n",
      "i =  5912\n",
      "i =  5913\n",
      "i =  5914\n",
      "i =  5915\n",
      "i =  5916\n",
      "i =  5917\n",
      "i =  5918\n",
      "i =  5919\n",
      "i =  5920\n",
      "i =  5921\n",
      "i =  5922\n",
      "i =  5923\n",
      "i =  5924\n",
      "i =  5925\n",
      "i =  5926\n",
      "i =  5927\n",
      "i =  5928\n",
      "i =  5929\n",
      "i =  5930\n",
      "i =  5931\n",
      "i =  5932\n",
      "i =  5933\n",
      "i =  5934\n",
      "i =  5935\n",
      "i =  5936\n",
      "i =  5937\n",
      "i =  5938\n",
      "i =  5939\n",
      "i =  5940\n",
      "i =  5941\n",
      "i =  5942\n",
      "i =  5943\n",
      "i =  5944\n",
      "i =  5945\n",
      "i =  5946\n",
      "i =  5947\n",
      "i =  5948\n",
      "i =  5949\n",
      "i =  5950\n",
      "i =  5951\n",
      "i =  5952\n",
      "i =  5953\n",
      "i =  5954\n",
      "i =  5955\n",
      "i =  5956\n",
      "i =  5957\n",
      "i =  5958\n",
      "i =  5959\n",
      "i =  5960\n",
      "i =  5961\n",
      "i =  5962\n",
      "i =  5963\n",
      "i =  5964\n",
      "i =  5965\n",
      "i =  5966\n",
      "i =  5967\n",
      "i =  5968\n",
      "i =  5969\n",
      "i =  5970\n",
      "i =  5971\n",
      "i =  5972\n",
      "i =  5973\n",
      "i =  5974\n",
      "i =  5975\n",
      "i =  5976\n",
      "i =  5977\n",
      "i =  5978\n",
      "i =  5979\n",
      "i =  5980\n",
      "i =  5981\n",
      "i =  5982\n",
      "i =  5983\n",
      "i =  5984\n",
      "i =  5985\n",
      "i =  5986\n",
      "i =  5987\n",
      "i =  5988\n",
      "i =  5989\n",
      "i =  5990\n",
      "i =  5991\n",
      "i =  5992\n",
      "i =  5993\n",
      "i =  5994\n",
      "i =  5995\n",
      "i =  5996\n",
      "i =  5997\n",
      "i =  5998\n",
      "i =  5999\n",
      "i =  6000\n",
      "i =  6001\n",
      "i =  6002\n",
      "i =  6003\n",
      "i =  6004\n",
      "i =  6005\n",
      "i =  6006\n",
      "i =  6007\n",
      "i =  6008\n",
      "i =  6009\n",
      "i =  6010\n",
      "i =  6011\n",
      "i =  6012\n",
      "i =  6013\n",
      "i =  6014\n",
      "i =  6015\n",
      "i =  6016\n",
      "i =  6017\n",
      "i =  6018\n",
      "i =  6019\n",
      "i =  6020\n",
      "i =  6021\n",
      "i =  6022\n",
      "i =  6023\n",
      "i =  6024\n",
      "i =  6025\n",
      "i =  6026\n",
      "i =  6027\n",
      "i =  6028\n",
      "i =  6029\n",
      "i =  6030\n",
      "i =  6031\n",
      "i =  6032\n",
      "i =  6033\n",
      "i =  6034\n",
      "i =  6035\n",
      "i =  6036\n",
      "i =  6037\n",
      "i =  6038\n",
      "i =  6039\n",
      "i =  6040\n",
      "i =  6041\n",
      "i =  6042\n",
      "i =  6043\n",
      "i =  6044\n",
      "i =  6045\n",
      "i =  6046\n",
      "i =  6047\n",
      "i =  6048\n",
      "i =  6049\n",
      "i =  6050\n",
      "i =  6051\n",
      "i =  6052\n",
      "i =  6053\n",
      "i =  6054\n",
      "i =  6055\n",
      "i =  6056\n",
      "i =  6057\n",
      "i =  6058\n",
      "i =  6059\n",
      "i =  6060\n",
      "i =  6061\n",
      "i =  6062\n",
      "i =  6063\n",
      "i =  6064\n",
      "i =  6065\n",
      "i =  6066\n",
      "i =  6067\n",
      "i =  6068\n",
      "i =  6069\n",
      "i =  6070\n",
      "i =  6071\n",
      "i =  6072\n",
      "i =  6073\n",
      "i =  6074\n",
      "i =  6075\n",
      "i =  6076\n",
      "i =  6077\n",
      "i =  6078\n",
      "i =  6079\n",
      "i =  6080\n",
      "i =  6081\n",
      "i =  6082\n",
      "i =  6083\n",
      "i =  6084\n",
      "i =  6085\n",
      "i =  6086\n",
      "i =  6087\n",
      "i =  6088\n",
      "i =  6089\n",
      "i =  6090\n",
      "i =  6091\n",
      "i =  6092\n",
      "i =  6093\n",
      "i =  6094\n",
      "i =  6095\n",
      "i =  6096\n",
      "i =  6097\n",
      "i =  6098\n",
      "i =  6099\n",
      "i =  6100\n",
      "i =  6101\n",
      "i =  6102\n",
      "i =  6103\n",
      "i =  6104\n",
      "i =  6105\n",
      "i =  6106\n",
      "i =  6107\n",
      "i =  6108\n",
      "i =  6109\n",
      "i =  6110\n",
      "i =  6111\n",
      "i =  6112\n",
      "i =  6113\n",
      "i =  6114\n",
      "i =  6115\n",
      "i =  6116\n",
      "i =  6117\n",
      "i =  6118\n",
      "i =  6119\n",
      "i =  6120\n",
      "i =  6121\n",
      "i =  6122\n",
      "i =  6123\n",
      "i =  6124\n",
      "i =  6125\n",
      "i =  6126\n",
      "i =  6127\n",
      "i =  6128\n",
      "i =  6129\n",
      "i =  6130\n",
      "i =  6131\n",
      "i =  6132\n",
      "i =  6133\n",
      "i =  6134\n",
      "i =  6135\n",
      "i =  6136\n",
      "i =  6137\n",
      "i =  6138\n",
      "i =  6139\n",
      "i =  6140\n",
      "i =  6141\n",
      "i =  6142\n",
      "i =  6143\n",
      "i =  6144\n",
      "i =  6145\n",
      "i =  6146\n",
      "i =  6147\n",
      "i =  6148\n",
      "i =  6149\n",
      "i =  6150\n",
      "i =  6151\n",
      "i =  6152\n",
      "i =  6153\n",
      "i =  6154\n",
      "i =  6155\n",
      "i =  6156\n",
      "i =  6157\n",
      "i =  6158\n",
      "i =  6159\n",
      "i =  6160\n",
      "i =  6161\n",
      "i =  6162\n",
      "i =  6163\n",
      "i =  6164\n",
      "i =  6165\n",
      "i =  6166\n",
      "i =  6167\n",
      "i =  6168\n",
      "i =  6169\n",
      "i =  6170\n",
      "i =  6171\n",
      "i =  6172\n",
      "i =  6173\n",
      "i =  6174\n",
      "i =  6175\n",
      "i =  6176\n",
      "i =  6177\n",
      "i =  6178\n",
      "i =  6179\n",
      "i =  6180\n",
      "i =  6181\n",
      "i =  6182\n",
      "i =  6183\n",
      "i =  6184\n",
      "i =  6185\n",
      "i =  6186\n",
      "i =  6187\n",
      "i =  6188\n",
      "i =  6189\n",
      "i =  6190\n",
      "i =  6191\n",
      "i =  6192\n",
      "i =  6193\n",
      "i =  6194\n",
      "i =  6195\n",
      "i =  6196\n",
      "i =  6197\n",
      "i =  6198\n",
      "i =  6199\n",
      "i =  6200\n",
      "i =  6201\n",
      "i =  6202\n",
      "i =  6203\n",
      "i =  6204\n",
      "i =  6205\n",
      "i =  6206\n",
      "i =  6207\n",
      "i =  6208\n",
      "i =  6209\n",
      "i =  6210\n",
      "i =  6211\n",
      "i =  6212\n",
      "i =  6213\n",
      "i =  6214\n",
      "i =  6215\n",
      "i =  6216\n",
      "i =  6217\n",
      "i =  6218\n",
      "i =  6219\n",
      "i =  6220\n",
      "i =  6221\n",
      "i =  6222\n",
      "i =  6223\n",
      "i =  6224\n",
      "i =  6225\n",
      "i =  6226\n",
      "i =  6227\n",
      "i =  6228\n",
      "i =  6229\n",
      "i =  6230\n",
      "i =  6231\n",
      "i =  6232\n",
      "i =  6233\n",
      "i =  6234\n",
      "i =  6235\n",
      "i =  6236\n",
      "i =  6237\n",
      "i =  6238\n",
      "i =  6239\n",
      "i =  6240\n",
      "i =  6241\n",
      "i =  6242\n",
      "i =  6243\n",
      "i =  6244\n",
      "i =  6245\n",
      "i =  6246\n",
      "i =  6247\n",
      "i =  6248\n",
      "i =  6249\n",
      "i =  6250\n",
      "i =  6251\n",
      "i =  6252\n",
      "i =  6253\n",
      "i =  6254\n",
      "i =  6255\n",
      "i =  6256\n",
      "i =  6257\n",
      "i =  6258\n",
      "i =  6259\n",
      "i =  6260\n",
      "i =  6261\n",
      "i =  6262\n",
      "i =  6263\n",
      "i =  6264\n",
      "i =  6265\n",
      "i =  6266\n",
      "i =  6267\n",
      "i =  6268\n",
      "i =  6269\n",
      "i =  6270\n",
      "i =  6271\n",
      "i =  6272\n",
      "i =  6273\n",
      "i =  6274\n",
      "i =  6275\n",
      "i =  6276\n",
      "i =  6277\n",
      "i =  6278\n",
      "i =  6279\n",
      "i =  6280\n",
      "i =  6281\n",
      "i =  6282\n",
      "i =  6283\n",
      "i =  6284\n",
      "i =  6285\n",
      "i =  6286\n",
      "i =  6287\n",
      "i =  6288\n",
      "i =  6289\n",
      "i =  6290\n",
      "i =  6291\n",
      "i =  6292\n",
      "i =  6293\n",
      "i =  6294\n",
      "i =  6295\n",
      "i =  6296\n",
      "i =  6297\n",
      "i =  6298\n",
      "i =  6299\n",
      "i =  6300\n",
      "i =  6301\n",
      "i =  6302\n",
      "i =  6303\n",
      "i =  6304\n",
      "i =  6305\n",
      "i =  6306\n",
      "i =  6307\n",
      "i =  6308\n",
      "i =  6309\n",
      "i =  6310\n",
      "i =  6311\n",
      "i =  6312\n",
      "i =  6313\n",
      "i =  6314\n",
      "i =  6315\n",
      "i =  6316\n",
      "i =  6317\n",
      "i =  6318\n",
      "i =  6319\n",
      "i =  6320\n",
      "i =  6321\n",
      "i =  6322\n",
      "i =  6323\n",
      "i =  6324\n",
      "i =  6325\n",
      "i =  6326\n",
      "i =  6327\n",
      "i =  6328\n",
      "i =  6329\n",
      "i =  6330\n",
      "i =  6331\n",
      "i =  6332\n",
      "i =  6333\n",
      "i =  6334\n",
      "i =  6335\n",
      "i =  6336\n",
      "i =  6337\n",
      "i =  6338\n",
      "i =  6339\n",
      "i =  6340\n",
      "i =  6341\n",
      "i =  6342\n",
      "i =  6343\n",
      "i =  6344\n",
      "i =  6345\n",
      "i =  6346\n",
      "i =  6347\n",
      "i =  6348\n",
      "i =  6349\n",
      "i =  6350\n",
      "i =  6351\n",
      "i =  6352\n",
      "i =  6353\n",
      "i =  6354\n",
      "i =  6355\n",
      "i =  6356\n",
      "i =  6357\n",
      "i =  6358\n",
      "i =  6359\n",
      "i =  6360\n",
      "i =  6361\n",
      "i =  6362\n",
      "i =  6363\n",
      "i =  6364\n",
      "i =  6365\n",
      "i =  6366\n",
      "i =  6367\n",
      "i =  6368\n",
      "i =  6369\n",
      "i =  6370\n",
      "i =  6371\n",
      "i =  6372\n",
      "i =  6373\n",
      "i =  6374\n",
      "i =  6375\n",
      "i =  6376\n",
      "i =  6377\n",
      "i =  6378\n",
      "i =  6379\n",
      "i =  6380\n",
      "i =  6381\n",
      "i =  6382\n",
      "i =  6383\n",
      "i =  6384\n",
      "i =  6385\n",
      "i =  6386\n",
      "i =  6387\n",
      "i =  6388\n",
      "i =  6389\n",
      "i =  6390\n",
      "i =  6391\n",
      "i =  6392\n",
      "i =  6393\n",
      "i =  6394\n",
      "i =  6395\n",
      "i =  6396\n",
      "i =  6397\n",
      "i =  6398\n",
      "i =  6399\n",
      "i =  6400\n",
      "i =  6401\n",
      "i =  6402\n",
      "i =  6403\n",
      "i =  6404\n",
      "i =  6405\n",
      "i =  6406\n",
      "i =  6407\n",
      "i =  6408\n",
      "i =  6409\n",
      "i =  6410\n",
      "i =  6411\n",
      "i =  6412\n",
      "i =  6413\n",
      "i =  6414\n",
      "i =  6415\n",
      "i =  6416\n",
      "i =  6417\n",
      "i =  6418\n",
      "i =  6419\n",
      "i =  6420\n",
      "i =  6421\n",
      "i =  6422\n",
      "i =  6423\n",
      "i =  6424\n",
      "i =  6425\n",
      "i =  6426\n",
      "i =  6427\n",
      "i =  6428\n",
      "i =  6429\n",
      "i =  6430\n",
      "i =  6431\n",
      "i =  6432\n",
      "i =  6433\n",
      "i =  6434\n",
      "i =  6435\n",
      "i =  6436\n",
      "i =  6437\n",
      "i =  6438\n",
      "i =  6439\n",
      "i =  6440\n",
      "i =  6441\n",
      "i =  6442\n",
      "i =  6443\n",
      "i =  6444\n",
      "i =  6445\n",
      "i =  6446\n",
      "i =  6447\n",
      "i =  6448\n",
      "i =  6449\n",
      "i =  6450\n",
      "i =  6451\n",
      "i =  6452\n",
      "i =  6453\n",
      "i =  6454\n",
      "i =  6455\n",
      "i =  6456\n",
      "i =  6457\n",
      "i =  6458\n",
      "i =  6459\n",
      "i =  6460\n",
      "i =  6461\n",
      "i =  6462\n",
      "i =  6463\n",
      "i =  6464\n",
      "i =  6465\n",
      "i =  6466\n",
      "i =  6467\n",
      "i =  6468\n",
      "i =  6469\n",
      "i =  6470\n",
      "i =  6471\n",
      "i =  6472\n",
      "i =  6473\n",
      "i =  6474\n",
      "i =  6475\n",
      "i =  6476\n",
      "i =  6477\n",
      "i =  6478\n",
      "i =  6479\n",
      "i =  6480\n",
      "i =  6481\n",
      "i =  6482\n",
      "i =  6483\n",
      "i =  6484\n",
      "i =  6485\n",
      "i =  6486\n",
      "i =  6487\n",
      "i =  6488\n",
      "i =  6489\n",
      "i =  6490\n",
      "i =  6491\n",
      "i =  6492\n",
      "i =  6493\n",
      "i =  6494\n",
      "i =  6495\n",
      "i =  6496\n",
      "i =  6497\n",
      "i =  6498\n",
      "i =  6499\n",
      "i =  6500\n",
      "i =  6501\n",
      "i =  6502\n",
      "i =  6503\n",
      "i =  6504\n",
      "i =  6505\n",
      "i =  6506\n",
      "i =  6507\n",
      "i =  6508\n",
      "i =  6509\n",
      "i =  6510\n",
      "i =  6511\n",
      "i =  6512\n",
      "i =  6513\n",
      "i =  6514\n",
      "i =  6515\n",
      "i =  6516\n",
      "i =  6517\n",
      "i =  6518\n",
      "i =  6519\n",
      "i =  6520\n",
      "i =  6521\n",
      "i =  6522\n",
      "i =  6523\n",
      "i =  6524\n",
      "i =  6525\n",
      "i =  6526\n",
      "i =  6527\n",
      "i =  6528\n",
      "i =  6529\n",
      "i =  6530\n",
      "i =  6531\n",
      "i =  6532\n",
      "i =  6533\n",
      "i =  6534\n",
      "i =  6535\n",
      "i =  6536\n",
      "i =  6537\n",
      "i =  6538\n",
      "i =  6539\n",
      "i =  6540\n",
      "i =  6541\n",
      "i =  6542\n",
      "i =  6543\n",
      "i =  6544\n",
      "i =  6545\n",
      "i =  6546\n",
      "i =  6547\n",
      "i =  6548\n",
      "i =  6549\n",
      "i =  6550\n",
      "i =  6551\n",
      "i =  6552\n",
      "i =  6553\n",
      "i =  6554\n",
      "i =  6555\n",
      "i =  6556\n",
      "i =  6557\n",
      "i =  6558\n",
      "i =  6559\n",
      "i =  6560\n",
      "i =  6561\n",
      "i =  6562\n",
      "i =  6563\n",
      "i =  6564\n",
      "i =  6565\n",
      "i =  6566\n",
      "i =  6567\n",
      "i =  6568\n",
      "i =  6569\n",
      "i =  6570\n",
      "i =  6571\n",
      "i =  6572\n",
      "i =  6573\n",
      "i =  6574\n",
      "i =  6575\n",
      "i =  6576\n",
      "i =  6577\n",
      "i =  6578\n",
      "i =  6579\n",
      "i =  6580\n",
      "i =  6581\n",
      "i =  6582\n",
      "i =  6583\n",
      "i =  6584\n",
      "i =  6585\n",
      "i =  6586\n",
      "i =  6587\n",
      "i =  6588\n",
      "i =  6589\n",
      "i =  6590\n",
      "i =  6591\n",
      "i =  6592\n",
      "i =  6593\n",
      "i =  6594\n",
      "i =  6595\n",
      "i =  6596\n",
      "i =  6597\n",
      "i =  6598\n",
      "i =  6599\n",
      "i =  6600\n",
      "i =  6601\n",
      "i =  6602\n",
      "i =  6603\n",
      "i =  6604\n",
      "i =  6605\n",
      "i =  6606\n",
      "i =  6607\n",
      "i =  6608\n",
      "i =  6609\n",
      "i =  6610\n",
      "i =  6611\n",
      "i =  6612\n",
      "i =  6613\n",
      "i =  6614\n",
      "i =  6615\n",
      "i =  6616\n",
      "i =  6617\n",
      "i =  6618\n",
      "i =  6619\n",
      "i =  6620\n",
      "i =  6621\n",
      "i =  6622\n",
      "i =  6623\n",
      "i =  6624\n",
      "i =  6625\n",
      "i =  6626\n",
      "i =  6627\n",
      "i =  6628\n",
      "i =  6629\n",
      "i =  6630\n",
      "i =  6631\n",
      "i =  6632\n",
      "i =  6633\n",
      "i =  6634\n",
      "i =  6635\n",
      "i =  6636\n",
      "i =  6637\n",
      "i =  6638\n",
      "i =  6639\n",
      "i =  6640\n",
      "i =  6641\n",
      "i =  6642\n",
      "i =  6643\n",
      "i =  6644\n",
      "i =  6645\n",
      "i =  6646\n",
      "i =  6647\n",
      "i =  6648\n",
      "i =  6649\n",
      "i =  6650\n",
      "i =  6651\n",
      "i =  6652\n",
      "i =  6653\n",
      "i =  6654\n",
      "i =  6655\n",
      "i =  6656\n",
      "i =  6657\n",
      "i =  6658\n",
      "i =  6659\n",
      "i =  6660\n",
      "i =  6661\n",
      "i =  6662\n",
      "i =  6663\n",
      "i =  6664\n",
      "i =  6665\n",
      "i =  6666\n",
      "i =  6667\n",
      "i =  6668\n",
      "i =  6669\n",
      "i =  6670\n",
      "i =  6671\n",
      "i =  6672\n",
      "i =  6673\n",
      "i =  6674\n",
      "i =  6675\n",
      "i =  6676\n",
      "i =  6677\n",
      "i =  6678\n",
      "i =  6679\n",
      "i =  6680\n",
      "i =  6681\n",
      "i =  6682\n",
      "i =  6683\n",
      "i =  6684\n",
      "i =  6685\n",
      "i =  6686\n",
      "i =  6687\n",
      "i =  6688\n",
      "i =  6689\n",
      "i =  6690\n",
      "i =  6691\n",
      "i =  6692\n",
      "i =  6693\n",
      "i =  6694\n",
      "i =  6695\n",
      "i =  6696\n",
      "i =  6697\n",
      "i =  6698\n",
      "i =  6699\n",
      "i =  6700\n",
      "i =  6701\n",
      "i =  6702\n",
      "i =  6703\n",
      "i =  6704\n",
      "i =  6705\n",
      "i =  6706\n",
      "i =  6707\n",
      "i =  6708\n",
      "i =  6709\n",
      "i =  6710\n",
      "i =  6711\n",
      "i =  6712\n",
      "i =  6713\n",
      "i =  6714\n",
      "i =  6715\n",
      "i =  6716\n",
      "i =  6717\n",
      "i =  6718\n",
      "i =  6719\n",
      "i =  6720\n",
      "i =  6721\n",
      "i =  6722\n",
      "i =  6723\n",
      "i =  6724\n",
      "i =  6725\n",
      "i =  6726\n",
      "i =  6727\n",
      "i =  6728\n",
      "i =  6729\n",
      "i =  6730\n",
      "i =  6731\n",
      "i =  6732\n",
      "i =  6733\n",
      "i =  6734\n",
      "i =  6735\n",
      "i =  6736\n",
      "i =  6737\n",
      "i =  6738\n",
      "i =  6739\n",
      "i =  6740\n",
      "i =  6741\n",
      "i =  6742\n",
      "i =  6743\n",
      "i =  6744\n",
      "i =  6745\n",
      "i =  6746\n",
      "i =  6747\n",
      "i =  6748\n",
      "i =  6749\n",
      "i =  6750\n",
      "i =  6751\n",
      "i =  6752\n",
      "i =  6753\n",
      "i =  6754\n",
      "i =  6755\n",
      "i =  6756\n",
      "i =  6757\n",
      "i =  6758\n",
      "i =  6759\n",
      "i =  6760\n",
      "i =  6761\n",
      "i =  6762\n",
      "i =  6763\n",
      "i =  6764\n",
      "i =  6765\n",
      "i =  6766\n",
      "i =  6767\n",
      "i =  6768\n",
      "i =  6769\n",
      "i =  6770\n",
      "i =  6771\n",
      "i =  6772\n",
      "i =  6773\n",
      "i =  6774\n",
      "i =  6775\n",
      "i =  6776\n",
      "i =  6777\n",
      "i =  6778\n",
      "i =  6779\n",
      "i =  6780\n",
      "i =  6781\n",
      "i =  6782\n",
      "i =  6783\n",
      "i =  6784\n",
      "i =  6785\n",
      "i =  6786\n",
      "i =  6787\n",
      "i =  6788\n",
      "i =  6789\n",
      "i =  6790\n",
      "i =  6791\n",
      "i =  6792\n",
      "i =  6793\n",
      "i =  6794\n",
      "i =  6795\n",
      "i =  6796\n",
      "i =  6797\n",
      "i =  6798\n",
      "i =  6799\n",
      "i =  6800\n",
      "i =  6801\n",
      "i =  6802\n",
      "i =  6803\n",
      "i =  6804\n",
      "i =  6805\n",
      "i =  6806\n",
      "i =  6807\n",
      "i =  6808\n",
      "i =  6809\n",
      "i =  6810\n",
      "i =  6811\n",
      "i =  6812\n",
      "i =  6813\n",
      "i =  6814\n",
      "i =  6815\n",
      "i =  6816\n",
      "i =  6817\n",
      "i =  6818\n",
      "i =  6819\n",
      "i =  6820\n",
      "i =  6821\n",
      "i =  6822\n",
      "i =  6823\n",
      "i =  6824\n",
      "i =  6825\n",
      "i =  6826\n",
      "i =  6827\n",
      "i =  6828\n",
      "i =  6829\n",
      "i =  6830\n",
      "i =  6831\n",
      "i =  6832\n",
      "i =  6833\n",
      "i =  6834\n",
      "i =  6835\n",
      "i =  6836\n",
      "i =  6837\n",
      "i =  6838\n",
      "i =  6839\n",
      "i =  6840\n",
      "i =  6841\n",
      "i =  6842\n",
      "i =  6843\n",
      "i =  6844\n",
      "i =  6845\n",
      "i =  6846\n",
      "i =  6847\n",
      "i =  6848\n",
      "i =  6849\n",
      "i =  6850\n",
      "i =  6851\n",
      "i =  6852\n",
      "i =  6853\n",
      "i =  6854\n",
      "i =  6855\n",
      "i =  6856\n",
      "i =  6857\n",
      "i =  6858\n",
      "i =  6859\n",
      "i =  6860\n",
      "i =  6861\n",
      "i =  6862\n",
      "i =  6863\n",
      "i =  6864\n",
      "i =  6865\n",
      "i =  6866\n",
      "i =  6867\n",
      "i =  6868\n",
      "i =  6869\n",
      "i =  6870\n",
      "i =  6871\n",
      "i =  6872\n",
      "i =  6873\n",
      "i =  6874\n",
      "i =  6875\n",
      "i =  6876\n",
      "i =  6877\n",
      "i =  6878\n",
      "i =  6879\n",
      "i =  6880\n",
      "i =  6881\n",
      "i =  6882\n",
      "i =  6883\n",
      "i =  6884\n",
      "i =  6885\n",
      "i =  6886\n",
      "i =  6887\n",
      "i =  6888\n",
      "i =  6889\n",
      "i =  6890\n",
      "i =  6891\n",
      "i =  6892\n",
      "i =  6893\n",
      "i =  6894\n",
      "i =  6895\n",
      "i =  6896\n",
      "i =  6897\n",
      "i =  6898\n",
      "i =  6899\n",
      "i =  6900\n",
      "i =  6901\n",
      "i =  6902\n",
      "i =  6903\n",
      "i =  6904\n",
      "i =  6905\n",
      "i =  6906\n",
      "i =  6907\n",
      "i =  6908\n",
      "i =  6909\n",
      "i =  6910\n",
      "i =  6911\n",
      "i =  6912\n",
      "i =  6913\n",
      "i =  6914\n",
      "i =  6915\n",
      "i =  6916\n",
      "i =  6917\n",
      "i =  6918\n",
      "i =  6919\n",
      "i =  6920\n",
      "i =  6921\n",
      "i =  6922\n",
      "i =  6923\n",
      "i =  6924\n",
      "i =  6925\n",
      "i =  6926\n",
      "i =  6927\n",
      "i =  6928\n",
      "i =  6929\n",
      "i =  6930\n",
      "i =  6931\n",
      "i =  6932\n",
      "i =  6933\n",
      "i =  6934\n",
      "i =  6935\n",
      "i =  6936\n",
      "i =  6937\n",
      "i =  6938\n",
      "i =  6939\n",
      "i =  6940\n",
      "i =  6941\n",
      "i =  6942\n",
      "i =  6943\n",
      "i =  6944\n",
      "i =  6945\n",
      "i =  6946\n",
      "i =  6947\n",
      "i =  6948\n",
      "i =  6949\n",
      "i =  6950\n",
      "i =  6951\n",
      "i =  6952\n",
      "i =  6953\n",
      "i =  6954\n",
      "i =  6955\n",
      "i =  6956\n",
      "i =  6957\n",
      "i =  6958\n",
      "i =  6959\n",
      "i =  6960\n",
      "i =  6961\n",
      "i =  6962\n",
      "i =  6963\n",
      "i =  6964\n",
      "i =  6965\n",
      "i =  6966\n",
      "i =  6967\n",
      "i =  6968\n",
      "i =  6969\n",
      "i =  6970\n",
      "i =  6971\n",
      "i =  6972\n",
      "i =  6973\n",
      "i =  6974\n",
      "i =  6975\n",
      "i =  6976\n",
      "i =  6977\n",
      "i =  6978\n",
      "i =  6979\n",
      "i =  6980\n",
      "i =  6981\n",
      "i =  6982\n",
      "i =  6983\n",
      "i =  6984\n",
      "i =  6985\n",
      "i =  6986\n",
      "i =  6987\n",
      "i =  6988\n",
      "i =  6989\n",
      "i =  6990\n",
      "i =  6991\n",
      "i =  6992\n",
      "i =  6993\n",
      "i =  6994\n",
      "i =  6995\n",
      "i =  6996\n",
      "i =  6997\n",
      "i =  6998\n",
      "i =  6999\n",
      "i =  7000\n",
      "i =  7001\n",
      "i =  7002\n",
      "i =  7003\n",
      "i =  7004\n",
      "i =  7005\n",
      "i =  7006\n",
      "i =  7007\n",
      "i =  7008\n",
      "i =  7009\n",
      "i =  7010\n",
      "i =  7011\n",
      "i =  7012\n",
      "i =  7013\n",
      "i =  7014\n",
      "i =  7015\n",
      "i =  7016\n",
      "i =  7017\n",
      "i =  7018\n",
      "i =  7019\n",
      "i =  7020\n",
      "i =  7021\n",
      "i =  7022\n",
      "i =  7023\n",
      "i =  7024\n",
      "i =  7025\n",
      "i =  7026\n",
      "i =  7027\n",
      "i =  7028\n",
      "i =  7029\n",
      "i =  7030\n",
      "i =  7031\n",
      "i =  7032\n",
      "i =  7033\n",
      "i =  7034\n",
      "i =  7035\n",
      "i =  7036\n",
      "i =  7037\n",
      "i =  7038\n",
      "i =  7039\n",
      "i =  7040\n",
      "i =  7041\n",
      "i =  7042\n",
      "i =  7043\n",
      "i =  7044\n",
      "i =  7045\n",
      "i =  7046\n",
      "i =  7047\n",
      "i =  7048\n",
      "i =  7049\n",
      "i =  7050\n",
      "i =  7051\n",
      "i =  7052\n",
      "i =  7053\n",
      "i =  7054\n",
      "i =  7055\n",
      "i =  7056\n",
      "i =  7057\n",
      "i =  7058\n",
      "i =  7059\n",
      "i =  7060\n",
      "i =  7061\n",
      "i =  7062\n",
      "i =  7063\n",
      "i =  7064\n",
      "i =  7065\n",
      "i =  7066\n",
      "i =  7067\n",
      "i =  7068\n",
      "i =  7069\n",
      "i =  7070\n",
      "i =  7071\n",
      "i =  7072\n",
      "i =  7073\n",
      "i =  7074\n",
      "i =  7075\n",
      "i =  7076\n",
      "i =  7077\n",
      "i =  7078\n",
      "i =  7079\n",
      "i =  7080\n",
      "i =  7081\n",
      "i =  7082\n",
      "i =  7083\n",
      "i =  7084\n",
      "i =  7085\n",
      "i =  7086\n",
      "i =  7087\n",
      "i =  7088\n",
      "i =  7089\n",
      "i =  7090\n",
      "i =  7091\n",
      "i =  7092\n",
      "i =  7093\n",
      "i =  7094\n",
      "i =  7095\n",
      "i =  7096\n",
      "i =  7097\n",
      "i =  7098\n",
      "i =  7099\n",
      "i =  7100\n",
      "i =  7101\n",
      "i =  7102\n",
      "i =  7103\n",
      "i =  7104\n",
      "i =  7105\n",
      "i =  7106\n",
      "i =  7107\n",
      "i =  7108\n",
      "i =  7109\n",
      "i =  7110\n",
      "i =  7111\n",
      "i =  7112\n",
      "i =  7113\n",
      "i =  7114\n",
      "i =  7115\n",
      "i =  7116\n",
      "i =  7117\n",
      "i =  7118\n",
      "i =  7119\n",
      "i =  7120\n",
      "i =  7121\n",
      "i =  7122\n",
      "i =  7123\n",
      "i =  7124\n",
      "i =  7125\n",
      "i =  7126\n",
      "i =  7127\n",
      "i =  7128\n",
      "i =  7129\n",
      "i =  7130\n",
      "i =  7131\n",
      "i =  7132\n",
      "i =  7133\n",
      "i =  7134\n",
      "i =  7135\n",
      "i =  7136\n",
      "i =  7137\n",
      "i =  7138\n",
      "i =  7139\n",
      "i =  7140\n",
      "i =  7141\n",
      "i =  7142\n",
      "i =  7143\n",
      "i =  7144\n",
      "i =  7145\n",
      "i =  7146\n",
      "i =  7147\n",
      "i =  7148\n",
      "i =  7149\n",
      "i =  7150\n",
      "i =  7151\n",
      "i =  7152\n",
      "i =  7153\n",
      "i =  7154\n",
      "i =  7155\n",
      "i =  7156\n",
      "i =  7157\n",
      "i =  7158\n",
      "i =  7159\n",
      "i =  7160\n",
      "i =  7161\n",
      "i =  7162\n",
      "i =  7163\n",
      "i =  7164\n",
      "i =  7165\n",
      "i =  7166\n",
      "i =  7167\n",
      "i =  7168\n",
      "i =  7169\n",
      "i =  7170\n",
      "i =  7171\n",
      "i =  7172\n",
      "i =  7173\n",
      "i =  7174\n",
      "i =  7175\n",
      "i =  7176\n",
      "i =  7177\n",
      "i =  7178\n",
      "i =  7179\n",
      "i =  7180\n",
      "i =  7181\n",
      "i =  7182\n",
      "i =  7183\n",
      "i =  7184\n",
      "i =  7185\n",
      "i =  7186\n",
      "i =  7187\n",
      "i =  7188\n",
      "i =  7189\n",
      "i =  7190\n",
      "i =  7191\n",
      "i =  7192\n",
      "i =  7193\n",
      "i =  7194\n",
      "i =  7195\n",
      "i =  7196\n",
      "i =  7197\n",
      "i =  7198\n",
      "i =  7199\n",
      "i =  7200\n",
      "i =  7201\n",
      "i =  7202\n",
      "i =  7203\n",
      "i =  7204\n",
      "i =  7205\n",
      "i =  7206\n",
      "i =  7207\n",
      "i =  7208\n",
      "i =  7209\n",
      "i =  7210\n",
      "i =  7211\n",
      "i =  7212\n",
      "i =  7213\n",
      "i =  7214\n",
      "i =  7215\n",
      "i =  7216\n",
      "i =  7217\n",
      "i =  7218\n",
      "i =  7219\n",
      "i =  7220\n",
      "i =  7221\n",
      "i =  7222\n",
      "i =  7223\n",
      "i =  7224\n",
      "i =  7225\n",
      "i =  7226\n",
      "i =  7227\n",
      "i =  7228\n",
      "i =  7229\n",
      "i =  7230\n",
      "i =  7231\n",
      "i =  7232\n",
      "i =  7233\n",
      "i =  7234\n",
      "i =  7235\n",
      "i =  7236\n",
      "i =  7237\n",
      "i =  7238\n",
      "i =  7239\n",
      "i =  7240\n",
      "i =  7241\n",
      "i =  7242\n",
      "i =  7243\n",
      "i =  7244\n",
      "i =  7245\n",
      "i =  7246\n",
      "i =  7247\n",
      "i =  7248\n",
      "i =  7249\n",
      "i =  7250\n",
      "i =  7251\n",
      "i =  7252\n",
      "i =  7253\n",
      "i =  7254\n",
      "i =  7255\n",
      "i =  7256\n",
      "i =  7257\n",
      "i =  7258\n",
      "i =  7259\n",
      "i =  7260\n",
      "i =  7261\n",
      "i =  7262\n",
      "i =  7263\n",
      "i =  7264\n",
      "i =  7265\n",
      "i =  7266\n",
      "i =  7267\n",
      "i =  7268\n",
      "i =  7269\n",
      "i =  7270\n",
      "i =  7271\n",
      "i =  7272\n",
      "i =  7273\n",
      "i =  7274\n",
      "i =  7275\n",
      "i =  7276\n",
      "i =  7277\n",
      "i =  7278\n",
      "i =  7279\n",
      "i =  7280\n",
      "i =  7281\n",
      "i =  7282\n",
      "i =  7283\n",
      "i =  7284\n",
      "i =  7285\n",
      "i =  7286\n",
      "i =  7287\n",
      "i =  7288\n",
      "i =  7289\n",
      "i =  7290\n",
      "i =  7291\n",
      "i =  7292\n",
      "i =  7293\n",
      "i =  7294\n",
      "i =  7295\n",
      "i =  7296\n",
      "i =  7297\n",
      "i =  7298\n",
      "i =  7299\n",
      "i =  7300\n",
      "i =  7301\n",
      "i =  7302\n",
      "i =  7303\n",
      "i =  7304\n",
      "i =  7305\n",
      "i =  7306\n",
      "i =  7307\n",
      "i =  7308\n",
      "i =  7309\n",
      "i =  7310\n",
      "i =  7311\n",
      "i =  7312\n",
      "i =  7313\n",
      "i =  7314\n",
      "i =  7315\n",
      "i =  7316\n",
      "i =  7317\n",
      "i =  7318\n",
      "i =  7319\n",
      "i =  7320\n",
      "i =  7321\n",
      "i =  7322\n",
      "i =  7323\n",
      "i =  7324\n",
      "i =  7325\n",
      "i =  7326\n",
      "i =  7327\n",
      "i =  7328\n",
      "i =  7329\n",
      "i =  7330\n",
      "i =  7331\n",
      "i =  7332\n",
      "i =  7333\n",
      "i =  7334\n",
      "i =  7335\n",
      "i =  7336\n",
      "i =  7337\n",
      "i =  7338\n",
      "i =  7339\n",
      "i =  7340\n",
      "i =  7341\n",
      "i =  7342\n",
      "i =  7343\n",
      "i =  7344\n",
      "i =  7345\n",
      "i =  7346\n",
      "i =  7347\n",
      "i =  7348\n",
      "i =  7349\n",
      "i =  7350\n",
      "i =  7351\n",
      "i =  7352\n",
      "i =  7353\n",
      "i =  7354\n",
      "i =  7355\n",
      "i =  7356\n",
      "i =  7357\n",
      "i =  7358\n",
      "i =  7359\n",
      "i =  7360\n",
      "i =  7361\n",
      "i =  7362\n",
      "i =  7363\n",
      "i =  7364\n",
      "i =  7365\n",
      "i =  7366\n",
      "i =  7367\n",
      "i =  7368\n",
      "i =  7369\n",
      "i =  7370\n",
      "i =  7371\n",
      "i =  7372\n",
      "i =  7373\n",
      "i =  7374\n",
      "i =  7375\n",
      "i =  7376\n",
      "i =  7377\n",
      "i =  7378\n",
      "i =  7379\n",
      "i =  7380\n",
      "i =  7381\n",
      "i =  7382\n",
      "i =  7383\n",
      "i =  7384\n",
      "i =  7385\n",
      "i =  7386\n",
      "i =  7387\n",
      "i =  7388\n",
      "i =  7389\n",
      "i =  7390\n",
      "i =  7391\n",
      "i =  7392\n",
      "i =  7393\n",
      "i =  7394\n",
      "i =  7395\n",
      "i =  7396\n",
      "i =  7397\n",
      "i =  7398\n",
      "i =  7399\n",
      "i =  7400\n",
      "i =  7401\n",
      "i =  7402\n",
      "i =  7403\n",
      "i =  7404\n",
      "i =  7405\n",
      "i =  7406\n",
      "i =  7407\n",
      "i =  7408\n",
      "i =  7409\n",
      "i =  7410\n",
      "i =  7411\n",
      "i =  7412\n",
      "i =  7413\n",
      "i =  7414\n",
      "i =  7415\n",
      "i =  7416\n",
      "i =  7417\n",
      "i =  7418\n",
      "i =  7419\n",
      "i =  7420\n",
      "i =  7421\n",
      "i =  7422\n",
      "i =  7423\n",
      "i =  7424\n",
      "i =  7425\n",
      "i =  7426\n",
      "i =  7427\n",
      "i =  7428\n",
      "i =  7429\n",
      "i =  7430\n",
      "i =  7431\n",
      "i =  7432\n",
      "i =  7433\n",
      "i =  7434\n",
      "i =  7435\n",
      "i =  7436\n",
      "i =  7437\n",
      "i =  7438\n",
      "i =  7439\n",
      "i =  7440\n",
      "i =  7441\n",
      "i =  7442\n",
      "i =  7443\n",
      "i =  7444\n",
      "i =  7445\n",
      "i =  7446\n",
      "i =  7447\n",
      "i =  7448\n",
      "i =  7449\n",
      "i =  7450\n",
      "i =  7451\n",
      "i =  7452\n",
      "i =  7453\n",
      "i =  7454\n",
      "i =  7455\n",
      "i =  7456\n",
      "i =  7457\n",
      "i =  7458\n",
      "i =  7459\n",
      "i =  7460\n",
      "i =  7461\n",
      "i =  7462\n",
      "i =  7463\n",
      "i =  7464\n",
      "i =  7465\n",
      "i =  7466\n",
      "i =  7467\n",
      "i =  7468\n",
      "i =  7469\n",
      "i =  7470\n",
      "i =  7471\n",
      "i =  7472\n",
      "i =  7473\n",
      "i =  7474\n",
      "i =  7475\n",
      "i =  7476\n",
      "i =  7477\n",
      "i =  7478\n",
      "i =  7479\n",
      "i =  7480\n",
      "i =  7481\n",
      "i =  7482\n",
      "i =  7483\n",
      "i =  7484\n",
      "i =  7485\n",
      "i =  7486\n",
      "i =  7487\n",
      "i =  7488\n",
      "i =  7489\n",
      "i =  7490\n",
      "i =  7491\n",
      "i =  7492\n",
      "i =  7493\n",
      "i =  7494\n",
      "i =  7495\n",
      "i =  7496\n",
      "i =  7497\n",
      "i =  7498\n",
      "i =  7499\n",
      "i =  7500\n",
      "i =  7501\n",
      "i =  7502\n",
      "i =  7503\n",
      "i =  7504\n",
      "i =  7505\n",
      "i =  7506\n",
      "i =  7507\n",
      "i =  7508\n",
      "i =  7509\n",
      "i =  7510\n",
      "i =  7511\n",
      "i =  7512\n",
      "i =  7513\n",
      "i =  7514\n",
      "i =  7515\n",
      "i =  7516\n",
      "i =  7517\n",
      "i =  7518\n",
      "i =  7519\n",
      "i =  7520\n",
      "i =  7521\n",
      "i =  7522\n",
      "i =  7523\n",
      "i =  7524\n",
      "i =  7525\n",
      "i =  7526\n",
      "i =  7527\n",
      "i =  7528\n",
      "i =  7529\n",
      "i =  7530\n",
      "i =  7531\n",
      "i =  7532\n",
      "i =  7533\n",
      "i =  7534\n",
      "i =  7535\n",
      "i =  7536\n",
      "i =  7537\n",
      "i =  7538\n",
      "i =  7539\n",
      "i =  7540\n",
      "i =  7541\n",
      "i =  7542\n",
      "i =  7543\n",
      "i =  7544\n",
      "i =  7545\n",
      "i =  7546\n",
      "i =  7547\n",
      "i =  7548\n",
      "i =  7549\n",
      "i =  7550\n",
      "i =  7551\n",
      "i =  7552\n",
      "i =  7553\n",
      "i =  7554\n",
      "i =  7555\n",
      "i =  7556\n",
      "i =  7557\n",
      "i =  7558\n",
      "i =  7559\n",
      "i =  7560\n",
      "i =  7561\n",
      "i =  7562\n",
      "i =  7563\n",
      "i =  7564\n",
      "i =  7565\n",
      "i =  7566\n",
      "i =  7567\n",
      "i =  7568\n",
      "i =  7569\n",
      "i =  7570\n",
      "i =  7571\n",
      "i =  7572\n",
      "i =  7573\n",
      "i =  7574\n",
      "i =  7575\n",
      "i =  7576\n",
      "i =  7577\n",
      "i =  7578\n",
      "i =  7579\n",
      "i =  7580\n",
      "i =  7581\n",
      "i =  7582\n",
      "i =  7583\n",
      "i =  7584\n",
      "i =  7585\n",
      "i =  7586\n",
      "i =  7587\n",
      "i =  7588\n",
      "i =  7589\n",
      "i =  7590\n",
      "i =  7591\n",
      "i =  7592\n",
      "i =  7593\n",
      "i =  7594\n",
      "i =  7595\n",
      "i =  7596\n",
      "i =  7597\n",
      "i =  7598\n",
      "i =  7599\n",
      "i =  7600\n",
      "i =  7601\n",
      "i =  7602\n",
      "i =  7603\n",
      "i =  7604\n",
      "i =  7605\n",
      "i =  7606\n",
      "i =  7607\n",
      "i =  7608\n",
      "i =  7609\n",
      "i =  7610\n",
      "i =  7611\n",
      "i =  7612\n",
      "i =  7613\n",
      "i =  7614\n",
      "i =  7615\n",
      "i =  7616\n",
      "i =  7617\n",
      "i =  7618\n",
      "i =  7619\n",
      "i =  7620\n",
      "i =  7621\n",
      "i =  7622\n",
      "i =  7623\n",
      "i =  7624\n",
      "i =  7625\n",
      "i =  7626\n",
      "i =  7627\n",
      "i =  7628\n",
      "i =  7629\n",
      "i =  7630\n",
      "i =  7631\n",
      "i =  7632\n",
      "i =  7633\n",
      "i =  7634\n",
      "i =  7635\n",
      "i =  7636\n",
      "i =  7637\n",
      "i =  7638\n",
      "i =  7639\n",
      "i =  7640\n",
      "i =  7641\n",
      "i =  7642\n",
      "i =  7643\n",
      "i =  7644\n",
      "i =  7645\n",
      "i =  7646\n",
      "i =  7647\n",
      "i =  7648\n",
      "i =  7649\n",
      "i =  7650\n",
      "i =  7651\n",
      "i =  7652\n",
      "i =  7653\n",
      "i =  7654\n",
      "i =  7655\n",
      "i =  7656\n",
      "i =  7657\n",
      "i =  7658\n",
      "i =  7659\n",
      "i =  7660\n",
      "i =  7661\n",
      "i =  7662\n",
      "i =  7663\n",
      "i =  7664\n",
      "i =  7665\n",
      "i =  7666\n",
      "i =  7667\n",
      "i =  7668\n",
      "i =  7669\n",
      "i =  7670\n",
      "i =  7671\n",
      "i =  7672\n",
      "i =  7673\n",
      "i =  7674\n",
      "i =  7675\n",
      "i =  7676\n",
      "i =  7677\n",
      "i =  7678\n",
      "i =  7679\n",
      "i =  7680\n",
      "i =  7681\n",
      "i =  7682\n",
      "i =  7683\n",
      "i =  7684\n",
      "i =  7685\n",
      "i =  7686\n",
      "i =  7687\n",
      "i =  7688\n",
      "i =  7689\n",
      "i =  7690\n",
      "i =  7691\n",
      "i =  7692\n",
      "i =  7693\n",
      "i =  7694\n",
      "i =  7695\n",
      "i =  7696\n",
      "i =  7697\n",
      "i =  7698\n",
      "i =  7699\n",
      "i =  7700\n",
      "i =  7701\n",
      "i =  7702\n",
      "i =  7703\n",
      "i =  7704\n",
      "i =  7705\n",
      "i =  7706\n",
      "i =  7707\n",
      "i =  7708\n",
      "i =  7709\n",
      "i =  7710\n",
      "i =  7711\n",
      "i =  7712\n",
      "i =  7713\n",
      "i =  7714\n",
      "i =  7715\n",
      "i =  7716\n",
      "i =  7717\n",
      "i =  7718\n",
      "i =  7719\n",
      "i =  7720\n",
      "i =  7721\n",
      "i =  7722\n",
      "i =  7723\n",
      "i =  7724\n",
      "i =  7725\n",
      "i =  7726\n",
      "i =  7727\n",
      "i =  7728\n",
      "i =  7729\n",
      "i =  7730\n",
      "i =  7731\n",
      "i =  7732\n",
      "i =  7733\n",
      "i =  7734\n",
      "i =  7735\n",
      "i =  7736\n",
      "i =  7737\n",
      "i =  7738\n",
      "i =  7739\n",
      "i =  7740\n",
      "i =  7741\n",
      "i =  7742\n",
      "i =  7743\n",
      "i =  7744\n",
      "i =  7745\n",
      "i =  7746\n",
      "i =  7747\n",
      "i =  7748\n",
      "i =  7749\n",
      "i =  7750\n",
      "i =  7751\n",
      "i =  7752\n",
      "i =  7753\n",
      "i =  7754\n",
      "i =  7755\n",
      "i =  7756\n",
      "i =  7757\n",
      "i =  7758\n",
      "i =  7759\n",
      "i =  7760\n",
      "i =  7761\n",
      "i =  7762\n",
      "i =  7763\n",
      "i =  7764\n",
      "i =  7765\n",
      "i =  7766\n",
      "i =  7767\n",
      "i =  7768\n",
      "i =  7769\n",
      "i =  7770\n",
      "i =  7771\n",
      "i =  7772\n",
      "i =  7773\n",
      "i =  7774\n",
      "i =  7775\n",
      "i =  7776\n",
      "i =  7777\n",
      "i =  7778\n",
      "i =  7779\n",
      "i =  7780\n",
      "i =  7781\n",
      "i =  7782\n",
      "i =  7783\n",
      "i =  7784\n",
      "i =  7785\n",
      "i =  7786\n",
      "i =  7787\n",
      "i =  7788\n",
      "i =  7789\n",
      "i =  7790\n",
      "i =  7791\n",
      "i =  7792\n",
      "i =  7793\n",
      "i =  7794\n",
      "i =  7795\n",
      "i =  7796\n",
      "i =  7797\n",
      "i =  7798\n",
      "i =  7799\n",
      "i =  7800\n",
      "i =  7801\n",
      "i =  7802\n",
      "i =  7803\n",
      "i =  7804\n",
      "i =  7805\n",
      "i =  7806\n",
      "i =  7807\n",
      "i =  7808\n",
      "i =  7809\n",
      "i =  7810\n",
      "i =  7811\n",
      "i =  7812\n",
      "i =  7813\n",
      "i =  7814\n",
      "i =  7815\n",
      "i =  7816\n",
      "i =  7817\n",
      "i =  7818\n",
      "i =  7819\n",
      "i =  7820\n",
      "i =  7821\n",
      "i =  7822\n",
      "i =  7823\n",
      "i =  7824\n",
      "i =  7825\n",
      "i =  7826\n",
      "i =  7827\n",
      "i =  7828\n",
      "i =  7829\n",
      "i =  7830\n",
      "i =  7831\n",
      "i =  7832\n",
      "i =  7833\n",
      "i =  7834\n",
      "i =  7835\n",
      "i =  7836\n",
      "i =  7837\n",
      "i =  7838\n",
      "i =  7839\n",
      "i =  7840\n",
      "i =  7841\n",
      "i =  7842\n",
      "i =  7843\n",
      "i =  7844\n",
      "i =  7845\n",
      "i =  7846\n",
      "i =  7847\n",
      "i =  7848\n",
      "i =  7849\n",
      "i =  7850\n",
      "i =  7851\n",
      "i =  7852\n",
      "i =  7853\n",
      "i =  7854\n",
      "i =  7855\n",
      "i =  7856\n",
      "i =  7857\n",
      "i =  7858\n",
      "i =  7859\n",
      "i =  7860\n",
      "i =  7861\n",
      "i =  7862\n",
      "i =  7863\n",
      "i =  7864\n",
      "i =  7865\n",
      "i =  7866\n",
      "i =  7867\n",
      "i =  7868\n",
      "i =  7869\n",
      "i =  7870\n",
      "i =  7871\n",
      "i =  7872\n",
      "i =  7873\n",
      "i =  7874\n",
      "i =  7875\n",
      "i =  7876\n",
      "i =  7877\n",
      "i =  7878\n",
      "i =  7879\n",
      "i =  7880\n",
      "i =  7881\n",
      "i =  7882\n",
      "i =  7883\n",
      "i =  7884\n",
      "i =  7885\n",
      "i =  7886\n",
      "i =  7887\n",
      "i =  7888\n",
      "i =  7889\n",
      "i =  7890\n",
      "i =  7891\n",
      "i =  7892\n",
      "i =  7893\n",
      "i =  7894\n",
      "i =  7895\n",
      "i =  7896\n",
      "i =  7897\n",
      "i =  7898\n",
      "i =  7899\n",
      "i =  7900\n",
      "i =  7901\n",
      "i =  7902\n",
      "i =  7903\n",
      "i =  7904\n",
      "i =  7905\n",
      "i =  7906\n",
      "i =  7907\n",
      "i =  7908\n",
      "i =  7909\n",
      "i =  7910\n",
      "i =  7911\n",
      "i =  7912\n",
      "i =  7913\n",
      "i =  7914\n",
      "i =  7915\n",
      "i =  7916\n",
      "i =  7917\n",
      "i =  7918\n",
      "i =  7919\n",
      "i =  7920\n",
      "i =  7921\n",
      "i =  7922\n",
      "i =  7923\n",
      "i =  7924\n",
      "i =  7925\n",
      "i =  7926\n",
      "i =  7927\n",
      "i =  7928\n",
      "i =  7929\n",
      "i =  7930\n",
      "i =  7931\n",
      "i =  7932\n",
      "i =  7933\n",
      "i =  7934\n",
      "i =  7935\n",
      "i =  7936\n",
      "i =  7937\n",
      "i =  7938\n",
      "i =  7939\n",
      "i =  7940\n",
      "i =  7941\n",
      "i =  7942\n",
      "i =  7943\n",
      "i =  7944\n",
      "i =  7945\n",
      "i =  7946\n",
      "i =  7947\n",
      "i =  7948\n",
      "i =  7949\n",
      "i =  7950\n",
      "i =  7951\n",
      "i =  7952\n",
      "i =  7953\n",
      "i =  7954\n",
      "i =  7955\n",
      "i =  7956\n",
      "i =  7957\n",
      "i =  7958\n",
      "i =  7959\n",
      "i =  7960\n",
      "i =  7961\n",
      "i =  7962\n",
      "i =  7963\n",
      "i =  7964\n",
      "i =  7965\n",
      "i =  7966\n",
      "i =  7967\n",
      "i =  7968\n",
      "i =  7969\n",
      "i =  7970\n",
      "i =  7971\n",
      "i =  7972\n",
      "i =  7973\n",
      "i =  7974\n",
      "i =  7975\n",
      "i =  7976\n",
      "i =  7977\n",
      "i =  7978\n",
      "i =  7979\n",
      "i =  7980\n",
      "i =  7981\n",
      "i =  7982\n",
      "i =  7983\n",
      "i =  7984\n",
      "i =  7985\n",
      "i =  7986\n",
      "i =  7987\n",
      "i =  7988\n",
      "i =  7989\n",
      "i =  7990\n",
      "i =  7991\n",
      "i =  7992\n",
      "i =  7993\n",
      "i =  7994\n",
      "i =  7995\n",
      "i =  7996\n",
      "i =  7997\n",
      "i =  7998\n",
      "i =  7999\n",
      "i =  8000\n",
      "i =  8001\n",
      "i =  8002\n",
      "i =  8003\n",
      "i =  8004\n",
      "i =  8005\n",
      "i =  8006\n",
      "i =  8007\n",
      "i =  8008\n",
      "i =  8009\n",
      "i =  8010\n",
      "i =  8011\n",
      "i =  8012\n",
      "i =  8013\n",
      "i =  8014\n",
      "i =  8015\n",
      "i =  8016\n",
      "i =  8017\n",
      "i =  8018\n",
      "i =  8019\n",
      "i =  8020\n",
      "i =  8021\n",
      "i =  8022\n",
      "i =  8023\n",
      "i =  8024\n",
      "i =  8025\n",
      "i =  8026\n",
      "i =  8027\n",
      "i =  8028\n",
      "i =  8029\n",
      "i =  8030\n",
      "i =  8031\n",
      "i =  8032\n",
      "i =  8033\n",
      "i =  8034\n",
      "i =  8035\n",
      "i =  8036\n",
      "i =  8037\n",
      "i =  8038\n",
      "i =  8039\n",
      "i =  8040\n",
      "i =  8041\n",
      "i =  8042\n",
      "i =  8043\n",
      "i =  8044\n",
      "i =  8045\n",
      "i =  8046\n",
      "i =  8047\n",
      "i =  8048\n",
      "i =  8049\n",
      "i =  8050\n",
      "i =  8051\n",
      "i =  8052\n",
      "i =  8053\n",
      "i =  8054\n",
      "i =  8055\n",
      "i =  8056\n",
      "i =  8057\n",
      "i =  8058\n",
      "i =  8059\n",
      "i =  8060\n",
      "i =  8061\n",
      "i =  8062\n",
      "i =  8063\n",
      "i =  8064\n",
      "i =  8065\n",
      "i =  8066\n",
      "i =  8067\n",
      "i =  8068\n",
      "i =  8069\n",
      "i =  8070\n",
      "i =  8071\n",
      "i =  8072\n",
      "i =  8073\n",
      "i =  8074\n",
      "i =  8075\n",
      "i =  8076\n",
      "i =  8077\n",
      "i =  8078\n",
      "i =  8079\n",
      "i =  8080\n",
      "i =  8081\n",
      "i =  8082\n",
      "i =  8083\n",
      "i =  8084\n",
      "i =  8085\n",
      "i =  8086\n",
      "i =  8087\n",
      "i =  8088\n",
      "i =  8089\n",
      "i =  8090\n",
      "i =  8091\n",
      "i =  8092\n",
      "i =  8093\n",
      "i =  8094\n",
      "i =  8095\n",
      "i =  8096\n",
      "i =  8097\n",
      "i =  8098\n",
      "i =  8099\n",
      "i =  8100\n",
      "i =  8101\n",
      "i =  8102\n",
      "i =  8103\n",
      "i =  8104\n",
      "i =  8105\n",
      "i =  8106\n",
      "i =  8107\n",
      "i =  8108\n",
      "i =  8109\n",
      "i =  8110\n",
      "i =  8111\n",
      "i =  8112\n",
      "i =  8113\n",
      "i =  8114\n",
      "i =  8115\n",
      "i =  8116\n",
      "i =  8117\n",
      "i =  8118\n",
      "i =  8119\n",
      "i =  8120\n",
      "i =  8121\n",
      "i =  8122\n",
      "i =  8123\n",
      "i =  8124\n",
      "i =  8125\n",
      "i =  8126\n",
      "i =  8127\n",
      "i =  8128\n",
      "i =  8129\n",
      "i =  8130\n",
      "i =  8131\n",
      "i =  8132\n",
      "i =  8133\n",
      "i =  8134\n",
      "i =  8135\n",
      "i =  8136\n",
      "i =  8137\n",
      "i =  8138\n",
      "i =  8139\n",
      "i =  8140\n",
      "i =  8141\n",
      "i =  8142\n",
      "i =  8143\n",
      "i =  8144\n",
      "i =  8145\n",
      "i =  8146\n",
      "i =  8147\n",
      "i =  8148\n",
      "i =  8149\n",
      "i =  8150\n",
      "i =  8151\n",
      "i =  8152\n",
      "i =  8153\n",
      "i =  8154\n",
      "i =  8155\n",
      "i =  8156\n",
      "i =  8157\n",
      "i =  8158\n",
      "i =  8159\n",
      "i =  8160\n",
      "i =  8161\n",
      "i =  8162\n",
      "i =  8163\n",
      "i =  8164\n",
      "i =  8165\n",
      "i =  8166\n",
      "i =  8167\n",
      "i =  8168\n",
      "i =  8169\n",
      "i =  8170\n",
      "i =  8171\n",
      "i =  8172\n",
      "i =  8173\n",
      "i =  8174\n",
      "i =  8175\n",
      "i =  8176\n",
      "i =  8177\n",
      "i =  8178\n",
      "i =  8179\n",
      "i =  8180\n",
      "i =  8181\n",
      "i =  8182\n",
      "i =  8183\n",
      "i =  8184\n",
      "i =  8185\n",
      "i =  8186\n",
      "i =  8187\n",
      "i =  8188\n",
      "i =  8189\n",
      "i =  8190\n",
      "i =  8191\n",
      "i =  8192\n",
      "i =  8193\n",
      "i =  8194\n",
      "i =  8195\n",
      "i =  8196\n",
      "i =  8197\n",
      "i =  8198\n",
      "i =  8199\n",
      "i =  8200\n",
      "i =  8201\n",
      "i =  8202\n",
      "i =  8203\n",
      "i =  8204\n",
      "i =  8205\n",
      "i =  8206\n",
      "i =  8207\n",
      "i =  8208\n",
      "i =  8209\n",
      "i =  8210\n",
      "i =  8211\n",
      "i =  8212\n",
      "i =  8213\n",
      "i =  8214\n",
      "i =  8215\n",
      "i =  8216\n",
      "i =  8217\n",
      "i =  8218\n",
      "i =  8219\n",
      "i =  8220\n",
      "i =  8221\n",
      "i =  8222\n",
      "i =  8223\n",
      "i =  8224\n",
      "i =  8225\n",
      "i =  8226\n",
      "i =  8227\n",
      "i =  8228\n",
      "i =  8229\n",
      "i =  8230\n",
      "i =  8231\n",
      "i =  8232\n",
      "i =  8233\n",
      "i =  8234\n",
      "i =  8235\n",
      "i =  8236\n",
      "i =  8237\n",
      "i =  8238\n",
      "i =  8239\n",
      "i =  8240\n",
      "i =  8241\n",
      "i =  8242\n",
      "i =  8243\n",
      "i =  8244\n",
      "i =  8245\n",
      "i =  8246\n",
      "i =  8247\n",
      "i =  8248\n",
      "i =  8249\n",
      "i =  8250\n",
      "i =  8251\n",
      "i =  8252\n",
      "i =  8253\n",
      "i =  8254\n",
      "i =  8255\n",
      "i =  8256\n",
      "i =  8257\n",
      "i =  8258\n",
      "i =  8259\n",
      "i =  8260\n",
      "i =  8261\n",
      "i =  8262\n",
      "i =  8263\n",
      "i =  8264\n",
      "i =  8265\n",
      "i =  8266\n",
      "i =  8267\n",
      "i =  8268\n",
      "i =  8269\n",
      "i =  8270\n",
      "i =  8271\n",
      "i =  8272\n",
      "i =  8273\n",
      "i =  8274\n",
      "i =  8275\n",
      "i =  8276\n",
      "i =  8277\n",
      "i =  8278\n",
      "i =  8279\n",
      "i =  8280\n",
      "i =  8281\n",
      "i =  8282\n",
      "i =  8283\n",
      "i =  8284\n",
      "i =  8285\n",
      "i =  8286\n",
      "i =  8287\n",
      "i =  8288\n",
      "i =  8289\n",
      "i =  8290\n",
      "i =  8291\n",
      "i =  8292\n",
      "i =  8293\n",
      "i =  8294\n",
      "i =  8295\n",
      "i =  8296\n",
      "i =  8297\n",
      "i =  8298\n",
      "i =  8299\n",
      "i =  8300\n",
      "i =  8301\n",
      "i =  8302\n",
      "i =  8303\n",
      "i =  8304\n",
      "i =  8305\n",
      "i =  8306\n",
      "i =  8307\n",
      "i =  8308\n",
      "i =  8309\n",
      "i =  8310\n",
      "i =  8311\n",
      "i =  8312\n",
      "i =  8313\n",
      "i =  8314\n",
      "i =  8315\n",
      "i =  8316\n",
      "i =  8317\n",
      "i =  8318\n",
      "i =  8319\n",
      "i =  8320\n",
      "i =  8321\n",
      "i =  8322\n",
      "i =  8323\n",
      "i =  8324\n",
      "i =  8325\n",
      "i =  8326\n",
      "i =  8327\n",
      "i =  8328\n",
      "i =  8329\n",
      "i =  8330\n",
      "i =  8331\n",
      "i =  8332\n",
      "i =  8333\n",
      "i =  8334\n",
      "i =  8335\n",
      "i =  8336\n",
      "i =  8337\n",
      "i =  8338\n",
      "i =  8339\n",
      "i =  8340\n",
      "i =  8341\n",
      "i =  8342\n",
      "i =  8343\n",
      "i =  8344\n",
      "i =  8345\n",
      "i =  8346\n",
      "i =  8347\n",
      "i =  8348\n",
      "i =  8349\n",
      "i =  8350\n",
      "i =  8351\n",
      "i =  8352\n",
      "i =  8353\n",
      "i =  8354\n",
      "i =  8355\n",
      "i =  8356\n",
      "i =  8357\n",
      "i =  8358\n",
      "i =  8359\n",
      "i =  8360\n",
      "i =  8361\n",
      "i =  8362\n",
      "i =  8363\n",
      "i =  8364\n",
      "i =  8365\n",
      "i =  8366\n",
      "i =  8367\n",
      "i =  8368\n",
      "i =  8369\n",
      "i =  8370\n",
      "i =  8371\n",
      "i =  8372\n",
      "i =  8373\n",
      "i =  8374\n",
      "i =  8375\n",
      "i =  8376\n",
      "i =  8377\n",
      "i =  8378\n",
      "i =  8379\n",
      "i =  8380\n",
      "i =  8381\n",
      "i =  8382\n",
      "i =  8383\n",
      "i =  8384\n",
      "i =  8385\n",
      "i =  8386\n",
      "i =  8387\n",
      "i =  8388\n",
      "i =  8389\n",
      "i =  8390\n",
      "i =  8391\n",
      "i =  8392\n",
      "i =  8393\n",
      "i =  8394\n",
      "i =  8395\n",
      "i =  8396\n",
      "i =  8397\n",
      "i =  8398\n",
      "i =  8399\n",
      "i =  8400\n",
      "i =  8401\n",
      "i =  8402\n",
      "i =  8403\n",
      "i =  8404\n",
      "i =  8405\n",
      "i =  8406\n",
      "i =  8407\n",
      "i =  8408\n",
      "i =  8409\n",
      "i =  8410\n",
      "i =  8411\n",
      "i =  8412\n",
      "i =  8413\n",
      "i =  8414\n",
      "i =  8415\n",
      "i =  8416\n",
      "i =  8417\n",
      "i =  8418\n",
      "i =  8419\n",
      "i =  8420\n",
      "i =  8421\n",
      "i =  8422\n",
      "i =  8423\n",
      "i =  8424\n",
      "i =  8425\n",
      "i =  8426\n",
      "i =  8427\n",
      "i =  8428\n",
      "i =  8429\n",
      "i =  8430\n",
      "i =  8431\n",
      "i =  8432\n",
      "i =  8433\n",
      "i =  8434\n",
      "i =  8435\n",
      "i =  8436\n",
      "i =  8437\n",
      "i =  8438\n",
      "i =  8439\n",
      "i =  8440\n",
      "i =  8441\n",
      "i =  8442\n",
      "i =  8443\n",
      "i =  8444\n",
      "i =  8445\n",
      "i =  8446\n",
      "i =  8447\n",
      "i =  8448\n",
      "i =  8449\n",
      "i =  8450\n",
      "i =  8451\n",
      "i =  8452\n",
      "i =  8453\n",
      "i =  8454\n",
      "i =  8455\n",
      "i =  8456\n",
      "i =  8457\n",
      "i =  8458\n",
      "i =  8459\n",
      "i =  8460\n",
      "i =  8461\n",
      "i =  8462\n",
      "i =  8463\n",
      "i =  8464\n",
      "i =  8465\n",
      "i =  8466\n",
      "i =  8467\n",
      "i =  8468\n",
      "i =  8469\n",
      "i =  8470\n",
      "i =  8471\n",
      "i =  8472\n",
      "i =  8473\n",
      "i =  8474\n",
      "i =  8475\n",
      "i =  8476\n",
      "i =  8477\n",
      "i =  8478\n",
      "i =  8479\n",
      "i =  8480\n",
      "i =  8481\n",
      "i =  8482\n",
      "i =  8483\n",
      "i =  8484\n",
      "i =  8485\n",
      "i =  8486\n",
      "i =  8487\n",
      "i =  8488\n",
      "i =  8489\n",
      "i =  8490\n",
      "i =  8491\n",
      "i =  8492\n",
      "i =  8493\n",
      "i =  8494\n",
      "i =  8495\n",
      "i =  8496\n",
      "i =  8497\n",
      "i =  8498\n",
      "i =  8499\n",
      "i =  8500\n",
      "i =  8501\n",
      "i =  8502\n",
      "i =  8503\n",
      "i =  8504\n",
      "i =  8505\n",
      "i =  8506\n",
      "i =  8507\n",
      "i =  8508\n",
      "i =  8509\n",
      "i =  8510\n",
      "i =  8511\n",
      "i =  8512\n",
      "i =  8513\n",
      "i =  8514\n",
      "i =  8515\n",
      "i =  8516\n",
      "i =  8517\n",
      "i =  8518\n",
      "i =  8519\n",
      "i =  8520\n",
      "i =  8521\n",
      "i =  8522\n",
      "i =  8523\n",
      "i =  8524\n",
      "i =  8525\n",
      "i =  8526\n",
      "i =  8527\n",
      "i =  8528\n",
      "i =  8529\n",
      "i =  8530\n",
      "i =  8531\n",
      "i =  8532\n",
      "i =  8533\n",
      "i =  8534\n",
      "i =  8535\n",
      "i =  8536\n",
      "i =  8537\n",
      "i =  8538\n",
      "i =  8539\n",
      "i =  8540\n",
      "i =  8541\n",
      "i =  8542\n",
      "i =  8543\n",
      "i =  8544\n",
      "i =  8545\n",
      "i =  8546\n",
      "i =  8547\n",
      "i =  8548\n",
      "i =  8549\n",
      "i =  8550\n",
      "i =  8551\n",
      "i =  8552\n",
      "i =  8553\n",
      "i =  8554\n",
      "i =  8555\n",
      "i =  8556\n",
      "i =  8557\n",
      "i =  8558\n",
      "i =  8559\n",
      "i =  8560\n",
      "i =  8561\n",
      "i =  8562\n",
      "i =  8563\n",
      "i =  8564\n",
      "i =  8565\n",
      "i =  8566\n",
      "i =  8567\n",
      "i =  8568\n",
      "i =  8569\n",
      "i =  8570\n",
      "i =  8571\n",
      "i =  8572\n",
      "i =  8573\n",
      "i =  8574\n",
      "i =  8575\n",
      "i =  8576\n",
      "i =  8577\n",
      "i =  8578\n",
      "i =  8579\n",
      "i =  8580\n",
      "i =  8581\n",
      "i =  8582\n",
      "i =  8583\n",
      "i =  8584\n",
      "i =  8585\n",
      "i =  8586\n",
      "i =  8587\n",
      "i =  8588\n",
      "i =  8589\n",
      "i =  8590\n",
      "i =  8591\n",
      "i =  8592\n",
      "i =  8593\n",
      "i =  8594\n",
      "i =  8595\n",
      "i =  8596\n",
      "i =  8597\n",
      "i =  8598\n",
      "i =  8599\n",
      "i =  8600\n",
      "i =  8601\n",
      "i =  8602\n",
      "i =  8603\n",
      "i =  8604\n",
      "i =  8605\n",
      "i =  8606\n",
      "i =  8607\n",
      "i =  8608\n",
      "i =  8609\n",
      "i =  8610\n",
      "i =  8611\n",
      "i =  8612\n",
      "i =  8613\n",
      "i =  8614\n",
      "i =  8615\n",
      "i =  8616\n",
      "i =  8617\n",
      "i =  8618\n",
      "i =  8619\n",
      "i =  8620\n",
      "i =  8621\n",
      "i =  8622\n",
      "i =  8623\n",
      "i =  8624\n",
      "i =  8625\n",
      "i =  8626\n",
      "i =  8627\n",
      "i =  8628\n",
      "i =  8629\n",
      "i =  8630\n",
      "i =  8631\n",
      "i =  8632\n",
      "i =  8633\n",
      "i =  8634\n",
      "i =  8635\n",
      "i =  8636\n",
      "i =  8637\n",
      "i =  8638\n",
      "i =  8639\n",
      "i =  8640\n",
      "i =  8641\n",
      "i =  8642\n",
      "i =  8643\n",
      "i =  8644\n",
      "i =  8645\n",
      "i =  8646\n",
      "i =  8647\n",
      "i =  8648\n",
      "i =  8649\n",
      "i =  8650\n",
      "i =  8651\n",
      "i =  8652\n",
      "i =  8653\n",
      "i =  8654\n",
      "i =  8655\n",
      "i =  8656\n",
      "i =  8657\n",
      "i =  8658\n",
      "i =  8659\n",
      "i =  8660\n",
      "i =  8661\n",
      "i =  8662\n",
      "i =  8663\n",
      "i =  8664\n",
      "i =  8665\n",
      "i =  8666\n",
      "i =  8667\n",
      "i =  8668\n",
      "i =  8669\n",
      "i =  8670\n",
      "i =  8671\n",
      "i =  8672\n",
      "i =  8673\n",
      "i =  8674\n",
      "i =  8675\n",
      "i =  8676\n",
      "i =  8677\n",
      "i =  8678\n",
      "i =  8679\n",
      "i =  8680\n",
      "i =  8681\n",
      "i =  8682\n",
      "i =  8683\n",
      "i =  8684\n",
      "i =  8685\n",
      "i =  8686\n",
      "i =  8687\n",
      "i =  8688\n",
      "i =  8689\n",
      "i =  8690\n",
      "i =  8691\n",
      "i =  8692\n",
      "i =  8693\n",
      "i =  8694\n",
      "i =  8695\n",
      "i =  8696\n",
      "i =  8697\n",
      "i =  8698\n",
      "i =  8699\n",
      "i =  8700\n",
      "i =  8701\n",
      "i =  8702\n",
      "i =  8703\n",
      "i =  8704\n",
      "i =  8705\n",
      "i =  8706\n",
      "i =  8707\n",
      "i =  8708\n",
      "i =  8709\n",
      "i =  8710\n",
      "i =  8711\n",
      "i =  8712\n",
      "i =  8713\n",
      "i =  8714\n",
      "i =  8715\n",
      "i =  8716\n",
      "i =  8717\n",
      "i =  8718\n",
      "i =  8719\n",
      "i =  8720\n",
      "i =  8721\n",
      "i =  8722\n",
      "i =  8723\n",
      "i =  8724\n",
      "i =  8725\n",
      "i =  8726\n",
      "i =  8727\n",
      "i =  8728\n",
      "i =  8729\n",
      "i =  8730\n",
      "i =  8731\n",
      "i =  8732\n",
      "i =  8733\n",
      "i =  8734\n",
      "i =  8735\n",
      "i =  8736\n",
      "i =  8737\n",
      "i =  8738\n",
      "i =  8739\n",
      "i =  8740\n",
      "i =  8741\n",
      "i =  8742\n",
      "i =  8743\n",
      "i =  8744\n",
      "i =  8745\n",
      "i =  8746\n",
      "i =  8747\n",
      "i =  8748\n",
      "i =  8749\n",
      "i =  8750\n",
      "i =  8751\n",
      "i =  8752\n",
      "i =  8753\n",
      "i =  8754\n",
      "i =  8755\n",
      "i =  8756\n",
      "i =  8757\n",
      "i =  8758\n",
      "i =  8759\n",
      "i =  8760\n",
      "i =  8761\n",
      "i =  8762\n",
      "i =  8763\n",
      "i =  8764\n",
      "i =  8765\n",
      "i =  8766\n",
      "i =  8767\n",
      "i =  8768\n",
      "i =  8769\n",
      "i =  8770\n",
      "i =  8771\n",
      "i =  8772\n",
      "i =  8773\n",
      "i =  8774\n",
      "i =  8775\n",
      "i =  8776\n",
      "i =  8777\n",
      "i =  8778\n",
      "i =  8779\n",
      "i =  8780\n",
      "i =  8781\n",
      "i =  8782\n",
      "i =  8783\n",
      "i =  8784\n",
      "i =  8785\n",
      "i =  8786\n",
      "i =  8787\n",
      "i =  8788\n",
      "i =  8789\n",
      "i =  8790\n",
      "i =  8791\n",
      "i =  8792\n",
      "i =  8793\n",
      "i =  8794\n",
      "i =  8795\n",
      "i =  8796\n",
      "i =  8797\n",
      "i =  8798\n",
      "i =  8799\n",
      "i =  8800\n",
      "i =  8801\n",
      "i =  8802\n",
      "i =  8803\n",
      "i =  8804\n",
      "i =  8805\n",
      "i =  8806\n",
      "i =  8807\n",
      "i =  8808\n",
      "i =  8809\n",
      "i =  8810\n",
      "i =  8811\n",
      "i =  8812\n",
      "i =  8813\n",
      "i =  8814\n",
      "i =  8815\n",
      "i =  8816\n",
      "i =  8817\n",
      "i =  8818\n",
      "i =  8819\n",
      "i =  8820\n",
      "i =  8821\n",
      "i =  8822\n",
      "i =  8823\n",
      "i =  8824\n",
      "i =  8825\n",
      "i =  8826\n",
      "i =  8827\n",
      "i =  8828\n",
      "i =  8829\n",
      "i =  8830\n",
      "i =  8831\n",
      "i =  8832\n",
      "i =  8833\n",
      "i =  8834\n",
      "i =  8835\n",
      "i =  8836\n",
      "i =  8837\n",
      "i =  8838\n",
      "i =  8839\n",
      "i =  8840\n",
      "i =  8841\n",
      "i =  8842\n",
      "i =  8843\n",
      "i =  8844\n",
      "i =  8845\n",
      "i =  8846\n",
      "i =  8847\n",
      "i =  8848\n",
      "i =  8849\n",
      "i =  8850\n",
      "i =  8851\n",
      "i =  8852\n",
      "i =  8853\n",
      "i =  8854\n",
      "i =  8855\n",
      "i =  8856\n",
      "i =  8857\n",
      "i =  8858\n",
      "i =  8859\n",
      "i =  8860\n",
      "i =  8861\n",
      "i =  8862\n",
      "i =  8863\n",
      "i =  8864\n",
      "i =  8865\n",
      "i =  8866\n",
      "i =  8867\n",
      "i =  8868\n",
      "i =  8869\n",
      "i =  8870\n",
      "i =  8871\n",
      "i =  8872\n",
      "i =  8873\n",
      "i =  8874\n",
      "i =  8875\n",
      "i =  8876\n",
      "i =  8877\n",
      "i =  8878\n",
      "i =  8879\n",
      "i =  8880\n",
      "i =  8881\n",
      "i =  8882\n",
      "i =  8883\n",
      "i =  8884\n",
      "i =  8885\n",
      "i =  8886\n",
      "i =  8887\n",
      "i =  8888\n",
      "i =  8889\n",
      "i =  8890\n",
      "i =  8891\n",
      "i =  8892\n",
      "i =  8893\n",
      "i =  8894\n",
      "i =  8895\n",
      "i =  8896\n",
      "i =  8897\n",
      "i =  8898\n",
      "i =  8899\n",
      "i =  8900\n",
      "i =  8901\n",
      "i =  8902\n",
      "i =  8903\n",
      "i =  8904\n",
      "i =  8905\n",
      "i =  8906\n",
      "i =  8907\n",
      "i =  8908\n",
      "i =  8909\n",
      "i =  8910\n",
      "i =  8911\n",
      "i =  8912\n",
      "i =  8913\n",
      "i =  8914\n",
      "i =  8915\n",
      "i =  8916\n",
      "i =  8917\n",
      "i =  8918\n",
      "i =  8919\n",
      "i =  8920\n",
      "i =  8921\n",
      "i =  8922\n",
      "i =  8923\n",
      "i =  8924\n",
      "i =  8925\n",
      "i =  8926\n",
      "i =  8927\n",
      "i =  8928\n",
      "i =  8929\n",
      "i =  8930\n",
      "i =  8931\n",
      "i =  8932\n",
      "i =  8933\n",
      "i =  8934\n",
      "i =  8935\n",
      "i =  8936\n",
      "i =  8937\n",
      "i =  8938\n",
      "i =  8939\n",
      "i =  8940\n",
      "i =  8941\n",
      "i =  8942\n",
      "i =  8943\n",
      "i =  8944\n",
      "i =  8945\n",
      "i =  8946\n",
      "i =  8947\n",
      "i =  8948\n",
      "i =  8949\n",
      "i =  8950\n",
      "i =  8951\n",
      "i =  8952\n",
      "i =  8953\n",
      "i =  8954\n",
      "i =  8955\n",
      "i =  8956\n",
      "i =  8957\n",
      "i =  8958\n",
      "i =  8959\n",
      "i =  8960\n",
      "i =  8961\n",
      "i =  8962\n",
      "i =  8963\n",
      "i =  8964\n",
      "i =  8965\n",
      "i =  8966\n",
      "i =  8967\n",
      "i =  8968\n",
      "i =  8969\n",
      "i =  8970\n",
      "i =  8971\n",
      "i =  8972\n",
      "i =  8973\n",
      "i =  8974\n",
      "i =  8975\n",
      "i =  8976\n",
      "i =  8977\n",
      "i =  8978\n",
      "i =  8979\n",
      "i =  8980\n",
      "i =  8981\n",
      "i =  8982\n",
      "i =  8983\n",
      "i =  8984\n",
      "i =  8985\n",
      "i =  8986\n",
      "i =  8987\n",
      "i =  8988\n",
      "i =  8989\n",
      "i =  8990\n",
      "i =  8991\n",
      "i =  8992\n",
      "i =  8993\n",
      "i =  8994\n",
      "i =  8995\n",
      "i =  8996\n",
      "i =  8997\n",
      "i =  8998\n",
      "i =  8999\n",
      "i =  9000\n",
      "i =  9001\n",
      "i =  9002\n",
      "i =  9003\n",
      "i =  9004\n",
      "i =  9005\n",
      "i =  9006\n",
      "i =  9007\n",
      "i =  9008\n",
      "i =  9009\n",
      "i =  9010\n",
      "i =  9011\n",
      "i =  9012\n",
      "i =  9013\n",
      "i =  9014\n",
      "i =  9015\n",
      "i =  9016\n",
      "i =  9017\n",
      "i =  9018\n",
      "i =  9019\n",
      "i =  9020\n",
      "i =  9021\n",
      "i =  9022\n",
      "i =  9023\n",
      "i =  9024\n",
      "i =  9025\n",
      "i =  9026\n",
      "i =  9027\n",
      "i =  9028\n",
      "i =  9029\n",
      "i =  9030\n",
      "i =  9031\n",
      "i =  9032\n",
      "i =  9033\n",
      "i =  9034\n",
      "i =  9035\n",
      "i =  9036\n",
      "i =  9037\n",
      "i =  9038\n",
      "i =  9039\n",
      "i =  9040\n",
      "i =  9041\n",
      "i =  9042\n",
      "i =  9043\n",
      "i =  9044\n",
      "i =  9045\n",
      "i =  9046\n",
      "i =  9047\n",
      "i =  9048\n",
      "i =  9049\n",
      "i =  9050\n",
      "i =  9051\n",
      "i =  9052\n",
      "i =  9053\n",
      "i =  9054\n",
      "i =  9055\n",
      "i =  9056\n",
      "i =  9057\n",
      "i =  9058\n",
      "i =  9059\n",
      "i =  9060\n",
      "i =  9061\n",
      "i =  9062\n",
      "i =  9063\n",
      "i =  9064\n",
      "i =  9065\n",
      "i =  9066\n",
      "i =  9067\n",
      "i =  9068\n",
      "i =  9069\n",
      "i =  9070\n",
      "i =  9071\n",
      "i =  9072\n",
      "i =  9073\n",
      "i =  9074\n",
      "i =  9075\n",
      "i =  9076\n",
      "i =  9077\n",
      "i =  9078\n",
      "i =  9079\n",
      "i =  9080\n",
      "i =  9081\n",
      "i =  9082\n",
      "i =  9083\n",
      "i =  9084\n",
      "i =  9085\n",
      "i =  9086\n",
      "i =  9087\n",
      "i =  9088\n",
      "i =  9089\n",
      "i =  9090\n",
      "i =  9091\n",
      "i =  9092\n",
      "i =  9093\n",
      "i =  9094\n",
      "i =  9095\n",
      "i =  9096\n",
      "i =  9097\n",
      "i =  9098\n",
      "i =  9099\n",
      "i =  9100\n",
      "i =  9101\n",
      "i =  9102\n",
      "i =  9103\n",
      "i =  9104\n",
      "i =  9105\n",
      "i =  9106\n",
      "i =  9107\n",
      "i =  9108\n",
      "i =  9109\n",
      "i =  9110\n",
      "i =  9111\n",
      "i =  9112\n",
      "i =  9113\n",
      "i =  9114\n",
      "i =  9115\n",
      "i =  9116\n",
      "i =  9117\n",
      "i =  9118\n",
      "i =  9119\n",
      "i =  9120\n",
      "i =  9121\n",
      "i =  9122\n",
      "i =  9123\n",
      "i =  9124\n",
      "i =  9125\n",
      "i =  9126\n",
      "i =  9127\n",
      "i =  9128\n",
      "i =  9129\n",
      "i =  9130\n",
      "i =  9131\n",
      "i =  9132\n",
      "i =  9133\n",
      "i =  9134\n",
      "i =  9135\n",
      "i =  9136\n",
      "i =  9137\n",
      "i =  9138\n",
      "i =  9139\n",
      "i =  9140\n",
      "i =  9141\n",
      "i =  9142\n",
      "i =  9143\n",
      "i =  9144\n",
      "i =  9145\n",
      "i =  9146\n",
      "i =  9147\n",
      "i =  9148\n",
      "i =  9149\n",
      "i =  9150\n",
      "i =  9151\n",
      "i =  9152\n",
      "i =  9153\n",
      "i =  9154\n",
      "i =  9155\n",
      "i =  9156\n",
      "i =  9157\n",
      "i =  9158\n",
      "i =  9159\n",
      "i =  9160\n",
      "i =  9161\n",
      "i =  9162\n",
      "i =  9163\n",
      "i =  9164\n",
      "i =  9165\n",
      "i =  9166\n",
      "i =  9167\n",
      "i =  9168\n",
      "i =  9169\n",
      "i =  9170\n",
      "i =  9171\n",
      "i =  9172\n",
      "i =  9173\n",
      "i =  9174\n",
      "i =  9175\n",
      "i =  9176\n",
      "i =  9177\n",
      "i =  9178\n",
      "i =  9179\n",
      "i =  9180\n",
      "i =  9181\n",
      "i =  9182\n",
      "i =  9183\n",
      "i =  9184\n",
      "i =  9185\n",
      "i =  9186\n",
      "i =  9187\n",
      "i =  9188\n",
      "i =  9189\n",
      "i =  9190\n",
      "i =  9191\n",
      "i =  9192\n",
      "i =  9193\n",
      "i =  9194\n",
      "i =  9195\n",
      "i =  9196\n",
      "i =  9197\n",
      "i =  9198\n",
      "i =  9199\n",
      "i =  9200\n",
      "i =  9201\n",
      "i =  9202\n",
      "i =  9203\n",
      "i =  9204\n",
      "i =  9205\n",
      "i =  9206\n",
      "i =  9207\n",
      "i =  9208\n",
      "i =  9209\n",
      "i =  9210\n",
      "i =  9211\n",
      "i =  9212\n",
      "i =  9213\n",
      "i =  9214\n",
      "i =  9215\n",
      "i =  9216\n",
      "i =  9217\n",
      "i =  9218\n",
      "i =  9219\n",
      "i =  9220\n",
      "i =  9221\n",
      "i =  9222\n",
      "i =  9223\n",
      "i =  9224\n",
      "i =  9225\n",
      "i =  9226\n",
      "i =  9227\n",
      "i =  9228\n",
      "i =  9229\n",
      "i =  9230\n",
      "i =  9231\n",
      "i =  9232\n",
      "i =  9233\n",
      "i =  9234\n",
      "i =  9235\n",
      "i =  9236\n",
      "i =  9237\n",
      "i =  9238\n",
      "i =  9239\n",
      "i =  9240\n",
      "i =  9241\n",
      "i =  9242\n",
      "i =  9243\n",
      "i =  9244\n",
      "i =  9245\n",
      "i =  9246\n",
      "i =  9247\n",
      "i =  9248\n",
      "i =  9249\n",
      "i =  9250\n",
      "i =  9251\n",
      "i =  9252\n",
      "i =  9253\n",
      "i =  9254\n",
      "i =  9255\n",
      "i =  9256\n",
      "i =  9257\n",
      "i =  9258\n",
      "i =  9259\n",
      "i =  9260\n",
      "i =  9261\n",
      "i =  9262\n",
      "i =  9263\n",
      "i =  9264\n",
      "i =  9265\n",
      "i =  9266\n",
      "i =  9267\n",
      "i =  9268\n",
      "i =  9269\n",
      "i =  9270\n",
      "i =  9271\n",
      "i =  9272\n",
      "i =  9273\n",
      "i =  9274\n",
      "i =  9275\n",
      "i =  9276\n",
      "i =  9277\n",
      "i =  9278\n",
      "i =  9279\n",
      "i =  9280\n",
      "i =  9281\n",
      "i =  9282\n",
      "i =  9283\n",
      "i =  9284\n",
      "i =  9285\n",
      "i =  9286\n",
      "i =  9287\n",
      "i =  9288\n",
      "i =  9289\n",
      "i =  9290\n",
      "i =  9291\n",
      "i =  9292\n",
      "i =  9293\n",
      "i =  9294\n",
      "i =  9295\n",
      "i =  9296\n",
      "i =  9297\n",
      "i =  9298\n",
      "i =  9299\n",
      "i =  9300\n",
      "i =  9301\n",
      "i =  9302\n",
      "i =  9303\n",
      "i =  9304\n",
      "i =  9305\n",
      "i =  9306\n",
      "i =  9307\n",
      "i =  9308\n",
      "i =  9309\n",
      "i =  9310\n",
      "i =  9311\n",
      "i =  9312\n",
      "i =  9313\n",
      "i =  9314\n",
      "i =  9315\n",
      "i =  9316\n",
      "i =  9317\n",
      "i =  9318\n",
      "i =  9319\n",
      "i =  9320\n",
      "i =  9321\n",
      "i =  9322\n",
      "i =  9323\n",
      "i =  9324\n",
      "i =  9325\n",
      "i =  9326\n",
      "i =  9327\n",
      "i =  9328\n",
      "i =  9329\n",
      "i =  9330\n",
      "i =  9331\n",
      "i =  9332\n",
      "i =  9333\n",
      "i =  9334\n",
      "i =  9335\n",
      "i =  9336\n",
      "i =  9337\n",
      "i =  9338\n",
      "i =  9339\n",
      "i =  9340\n",
      "i =  9341\n",
      "i =  9342\n",
      "i =  9343\n",
      "i =  9344\n",
      "i =  9345\n",
      "i =  9346\n",
      "i =  9347\n",
      "i =  9348\n",
      "i =  9349\n",
      "i =  9350\n",
      "i =  9351\n",
      "i =  9352\n",
      "i =  9353\n",
      "i =  9354\n",
      "i =  9355\n",
      "i =  9356\n",
      "i =  9357\n",
      "i =  9358\n",
      "i =  9359\n",
      "i =  9360\n",
      "i =  9361\n",
      "i =  9362\n",
      "i =  9363\n",
      "i =  9364\n",
      "i =  9365\n",
      "i =  9366\n",
      "i =  9367\n",
      "i =  9368\n",
      "i =  9369\n",
      "i =  9370\n",
      "i =  9371\n",
      "i =  9372\n",
      "i =  9373\n",
      "i =  9374\n",
      "i =  9375\n",
      "i =  9376\n",
      "i =  9377\n",
      "i =  9378\n",
      "i =  9379\n",
      "i =  9380\n",
      "i =  9381\n",
      "i =  9382\n",
      "i =  9383\n",
      "i =  9384\n",
      "i =  9385\n",
      "i =  9386\n",
      "i =  9387\n",
      "i =  9388\n",
      "i =  9389\n",
      "i =  9390\n",
      "i =  9391\n",
      "i =  9392\n",
      "i =  9393\n",
      "i =  9394\n",
      "i =  9395\n",
      "i =  9396\n",
      "i =  9397\n",
      "i =  9398\n",
      "i =  9399\n",
      "i =  9400\n",
      "i =  9401\n",
      "i =  9402\n",
      "i =  9403\n",
      "i =  9404\n",
      "i =  9405\n",
      "i =  9406\n",
      "i =  9407\n",
      "i =  9408\n",
      "i =  9409\n",
      "i =  9410\n",
      "i =  9411\n",
      "i =  9412\n",
      "i =  9413\n",
      "i =  9414\n",
      "i =  9415\n",
      "i =  9416\n",
      "i =  9417\n",
      "i =  9418\n",
      "i =  9419\n",
      "i =  9420\n",
      "i =  9421\n",
      "i =  9422\n",
      "i =  9423\n",
      "i =  9424\n",
      "i =  9425\n",
      "i =  9426\n",
      "i =  9427\n",
      "i =  9428\n",
      "i =  9429\n",
      "i =  9430\n",
      "i =  9431\n",
      "i =  9432\n",
      "i =  9433\n",
      "i =  9434\n",
      "i =  9435\n",
      "i =  9436\n",
      "i =  9437\n",
      "i =  9438\n",
      "i =  9439\n",
      "i =  9440\n",
      "i =  9441\n",
      "i =  9442\n",
      "i =  9443\n",
      "i =  9444\n",
      "i =  9445\n",
      "i =  9446\n",
      "i =  9447\n",
      "i =  9448\n",
      "i =  9449\n",
      "i =  9450\n",
      "i =  9451\n",
      "i =  9452\n",
      "i =  9453\n",
      "i =  9454\n",
      "i =  9455\n",
      "i =  9456\n",
      "i =  9457\n",
      "i =  9458\n",
      "i =  9459\n",
      "i =  9460\n",
      "i =  9461\n",
      "i =  9462\n",
      "i =  9463\n",
      "i =  9464\n",
      "i =  9465\n",
      "i =  9466\n",
      "i =  9467\n",
      "i =  9468\n",
      "i =  9469\n",
      "i =  9470\n",
      "i =  9471\n",
      "i =  9472\n",
      "i =  9473\n",
      "i =  9474\n",
      "i =  9475\n",
      "i =  9476\n",
      "i =  9477\n",
      "i =  9478\n",
      "i =  9479\n",
      "i =  9480\n",
      "i =  9481\n",
      "i =  9482\n",
      "i =  9483\n",
      "i =  9484\n",
      "i =  9485\n",
      "i =  9486\n",
      "i =  9487\n",
      "i =  9488\n",
      "i =  9489\n",
      "i =  9490\n",
      "i =  9491\n",
      "i =  9492\n",
      "i =  9493\n",
      "i =  9494\n",
      "i =  9495\n",
      "i =  9496\n",
      "i =  9497\n",
      "i =  9498\n",
      "i =  9499\n",
      "i =  9500\n",
      "i =  9501\n",
      "i =  9502\n",
      "i =  9503\n",
      "i =  9504\n",
      "i =  9505\n",
      "i =  9506\n",
      "i =  9507\n",
      "i =  9508\n",
      "i =  9509\n",
      "i =  9510\n",
      "i =  9511\n",
      "i =  9512\n",
      "i =  9513\n",
      "i =  9514\n",
      "i =  9515\n",
      "i =  9516\n",
      "i =  9517\n",
      "i =  9518\n",
      "i =  9519\n",
      "i =  9520\n",
      "i =  9521\n",
      "i =  9522\n",
      "i =  9523\n",
      "i =  9524\n",
      "i =  9525\n",
      "i =  9526\n",
      "i =  9527\n",
      "i =  9528\n",
      "i =  9529\n",
      "i =  9530\n",
      "i =  9531\n",
      "i =  9532\n",
      "i =  9533\n",
      "i =  9534\n",
      "i =  9535\n",
      "i =  9536\n",
      "i =  9537\n",
      "i =  9538\n",
      "i =  9539\n",
      "i =  9540\n",
      "i =  9541\n",
      "i =  9542\n",
      "i =  9543\n",
      "i =  9544\n",
      "i =  9545\n",
      "i =  9546\n",
      "i =  9547\n",
      "i =  9548\n",
      "i =  9549\n",
      "i =  9550\n",
      "i =  9551\n",
      "i =  9552\n",
      "i =  9553\n",
      "i =  9554\n",
      "i =  9555\n",
      "i =  9556\n",
      "i =  9557\n",
      "i =  9558\n",
      "i =  9559\n",
      "i =  9560\n",
      "i =  9561\n",
      "i =  9562\n",
      "i =  9563\n",
      "i =  9564\n",
      "i =  9565\n",
      "i =  9566\n",
      "i =  9567\n",
      "i =  9568\n",
      "i =  9569\n",
      "i =  9570\n",
      "i =  9571\n",
      "i =  9572\n",
      "i =  9573\n",
      "i =  9574\n",
      "i =  9575\n",
      "i =  9576\n",
      "i =  9577\n",
      "i =  9578\n",
      "i =  9579\n",
      "i =  9580\n",
      "i =  9581\n",
      "i =  9582\n",
      "i =  9583\n",
      "i =  9584\n",
      "i =  9585\n",
      "i =  9586\n",
      "i =  9587\n",
      "i =  9588\n",
      "i =  9589\n",
      "i =  9590\n",
      "i =  9591\n",
      "i =  9592\n",
      "i =  9593\n",
      "i =  9594\n",
      "i =  9595\n",
      "i =  9596\n",
      "i =  9597\n",
      "i =  9598\n",
      "i =  9599\n",
      "i =  9600\n",
      "i =  9601\n",
      "i =  9602\n",
      "i =  9603\n",
      "i =  9604\n",
      "i =  9605\n",
      "i =  9606\n",
      "i =  9607\n",
      "i =  9608\n",
      "i =  9609\n",
      "i =  9610\n",
      "i =  9611\n",
      "i =  9612\n",
      "i =  9613\n",
      "i =  9614\n",
      "i =  9615\n",
      "i =  9616\n",
      "i =  9617\n",
      "i =  9618\n",
      "i =  9619\n",
      "i =  9620\n",
      "i =  9621\n",
      "i =  9622\n",
      "i =  9623\n",
      "i =  9624\n",
      "i =  9625\n",
      "i =  9626\n",
      "i =  9627\n",
      "i =  9628\n",
      "i =  9629\n",
      "i =  9630\n",
      "i =  9631\n",
      "i =  9632\n",
      "i =  9633\n",
      "i =  9634\n",
      "i =  9635\n",
      "i =  9636\n",
      "i =  9637\n",
      "i =  9638\n",
      "i =  9639\n",
      "i =  9640\n",
      "i =  9641\n",
      "i =  9642\n",
      "i =  9643\n",
      "i =  9644\n",
      "i =  9645\n",
      "i =  9646\n",
      "i =  9647\n",
      "i =  9648\n",
      "i =  9649\n",
      "i =  9650\n",
      "i =  9651\n",
      "i =  9652\n",
      "i =  9653\n",
      "i =  9654\n",
      "i =  9655\n",
      "i =  9656\n",
      "i =  9657\n",
      "i =  9658\n",
      "i =  9659\n",
      "i =  9660\n",
      "i =  9661\n",
      "i =  9662\n",
      "i =  9663\n",
      "i =  9664\n",
      "i =  9665\n",
      "i =  9666\n",
      "i =  9667\n",
      "i =  9668\n",
      "i =  9669\n",
      "i =  9670\n",
      "i =  9671\n",
      "i =  9672\n",
      "i =  9673\n",
      "i =  9674\n",
      "i =  9675\n",
      "i =  9676\n",
      "i =  9677\n",
      "i =  9678\n",
      "i =  9679\n",
      "i =  9680\n",
      "i =  9681\n",
      "i =  9682\n",
      "i =  9683\n",
      "i =  9684\n",
      "i =  9685\n",
      "i =  9686\n",
      "i =  9687\n",
      "i =  9688\n",
      "i =  9689\n",
      "i =  9690\n",
      "i =  9691\n",
      "i =  9692\n",
      "i =  9693\n",
      "i =  9694\n",
      "i =  9695\n",
      "i =  9696\n",
      "i =  9697\n",
      "i =  9698\n",
      "i =  9699\n",
      "i =  9700\n",
      "i =  9701\n",
      "i =  9702\n",
      "i =  9703\n",
      "i =  9704\n",
      "i =  9705\n",
      "i =  9706\n",
      "i =  9707\n",
      "i =  9708\n",
      "i =  9709\n",
      "i =  9710\n",
      "i =  9711\n",
      "i =  9712\n",
      "i =  9713\n",
      "i =  9714\n",
      "i =  9715\n",
      "i =  9716\n",
      "i =  9717\n",
      "i =  9718\n",
      "i =  9719\n",
      "i =  9720\n",
      "i =  9721\n",
      "i =  9722\n",
      "i =  9723\n",
      "i =  9724\n",
      "i =  9725\n",
      "i =  9726\n",
      "i =  9727\n",
      "i =  9728\n",
      "i =  9729\n",
      "i =  9730\n",
      "i =  9731\n",
      "i =  9732\n",
      "i =  9733\n",
      "i =  9734\n",
      "i =  9735\n",
      "i =  9736\n",
      "i =  9737\n",
      "i =  9738\n",
      "i =  9739\n",
      "i =  9740\n",
      "i =  9741\n",
      "i =  9742\n",
      "i =  9743\n",
      "i =  9744\n",
      "i =  9745\n",
      "i =  9746\n",
      "i =  9747\n",
      "i =  9748\n",
      "i =  9749\n",
      "i =  9750\n",
      "i =  9751\n",
      "i =  9752\n",
      "i =  9753\n",
      "i =  9754\n",
      "i =  9755\n",
      "i =  9756\n",
      "i =  9757\n",
      "i =  9758\n",
      "i =  9759\n",
      "i =  9760\n",
      "i =  9761\n",
      "i =  9762\n",
      "i =  9763\n",
      "i =  9764\n",
      "i =  9765\n",
      "i =  9766\n",
      "i =  9767\n",
      "i =  9768\n",
      "i =  9769\n",
      "i =  9770\n",
      "i =  9771\n",
      "i =  9772\n",
      "i =  9773\n",
      "i =  9774\n",
      "i =  9775\n",
      "i =  9776\n",
      "i =  9777\n",
      "i =  9778\n",
      "i =  9779\n",
      "i =  9780\n",
      "i =  9781\n",
      "i =  9782\n",
      "i =  9783\n",
      "i =  9784\n",
      "i =  9785\n",
      "i =  9786\n",
      "i =  9787\n",
      "i =  9788\n",
      "i =  9789\n",
      "i =  9790\n",
      "i =  9791\n",
      "i =  9792\n",
      "i =  9793\n",
      "i =  9794\n",
      "i =  9795\n",
      "i =  9796\n",
      "i =  9797\n",
      "i =  9798\n",
      "i =  9799\n",
      "i =  9800\n",
      "i =  9801\n",
      "i =  9802\n",
      "i =  9803\n",
      "i =  9804\n",
      "i =  9805\n",
      "i =  9806\n",
      "i =  9807\n",
      "i =  9808\n",
      "i =  9809\n",
      "i =  9810\n",
      "i =  9811\n",
      "i =  9812\n",
      "i =  9813\n",
      "i =  9814\n",
      "i =  9815\n",
      "i =  9816\n",
      "i =  9817\n",
      "i =  9818\n",
      "i =  9819\n",
      "i =  9820\n",
      "i =  9821\n",
      "i =  9822\n",
      "i =  9823\n",
      "i =  9824\n",
      "i =  9825\n",
      "i =  9826\n",
      "i =  9827\n",
      "i =  9828\n",
      "i =  9829\n",
      "i =  9830\n",
      "i =  9831\n",
      "i =  9832\n",
      "i =  9833\n",
      "i =  9834\n",
      "i =  9835\n",
      "i =  9836\n",
      "i =  9837\n",
      "i =  9838\n",
      "i =  9839\n",
      "i =  9840\n",
      "i =  9841\n",
      "i =  9842\n",
      "i =  9843\n",
      "i =  9844\n",
      "i =  9845\n",
      "i =  9846\n",
      "i =  9847\n",
      "i =  9848\n",
      "i =  9849\n",
      "i =  9850\n",
      "i =  9851\n",
      "i =  9852\n",
      "i =  9853\n",
      "i =  9854\n",
      "i =  9855\n",
      "i =  9856\n",
      "i =  9857\n",
      "i =  9858\n",
      "i =  9859\n",
      "i =  9860\n",
      "i =  9861\n",
      "i =  9862\n",
      "i =  9863\n",
      "i =  9864\n",
      "i =  9865\n",
      "i =  9866\n",
      "i =  9867\n",
      "i =  9868\n",
      "i =  9869\n",
      "i =  9870\n",
      "i =  9871\n",
      "i =  9872\n",
      "i =  9873\n",
      "i =  9874\n",
      "i =  9875\n",
      "i =  9876\n",
      "i =  9877\n",
      "i =  9878\n",
      "i =  9879\n",
      "i =  9880\n",
      "i =  9881\n",
      "i =  9882\n",
      "i =  9883\n",
      "i =  9884\n",
      "i =  9885\n",
      "i =  9886\n",
      "i =  9887\n",
      "i =  9888\n",
      "i =  9889\n",
      "i =  9890\n",
      "i =  9891\n",
      "i =  9892\n",
      "i =  9893\n",
      "i =  9894\n",
      "i =  9895\n",
      "i =  9896\n",
      "i =  9897\n",
      "i =  9898\n",
      "i =  9899\n",
      "i =  9900\n",
      "i =  9901\n",
      "i =  9902\n",
      "i =  9903\n",
      "i =  9904\n",
      "i =  9905\n",
      "i =  9906\n",
      "i =  9907\n",
      "i =  9908\n",
      "i =  9909\n",
      "i =  9910\n",
      "i =  9911\n",
      "i =  9912\n",
      "i =  9913\n",
      "i =  9914\n",
      "i =  9915\n",
      "i =  9916\n",
      "i =  9917\n",
      "i =  9918\n",
      "i =  9919\n",
      "i =  9920\n",
      "i =  9921\n",
      "i =  9922\n",
      "i =  9923\n",
      "i =  9924\n",
      "i =  9925\n",
      "i =  9926\n",
      "i =  9927\n",
      "i =  9928\n",
      "i =  9929\n",
      "i =  9930\n",
      "i =  9931\n",
      "i =  9932\n",
      "i =  9933\n",
      "i =  9934\n",
      "i =  9935\n",
      "i =  9936\n",
      "i =  9937\n",
      "i =  9938\n",
      "i =  9939\n",
      "i =  9940\n",
      "i =  9941\n",
      "i =  9942\n",
      "i =  9943\n",
      "i =  9944\n",
      "i =  9945\n",
      "i =  9946\n",
      "i =  9947\n",
      "i =  9948\n",
      "i =  9949\n",
      "i =  9950\n",
      "i =  9951\n",
      "i =  9952\n",
      "i =  9953\n",
      "i =  9954\n",
      "i =  9955\n",
      "i =  9956\n",
      "i =  9957\n",
      "i =  9958\n",
      "i =  9959\n",
      "i =  9960\n",
      "i =  9961\n",
      "i =  9962\n",
      "i =  9963\n",
      "i =  9964\n",
      "i =  9965\n",
      "i =  9966\n",
      "i =  9967\n",
      "i =  9968\n",
      "i =  9969\n",
      "i =  9970\n",
      "i =  9971\n",
      "i =  9972\n",
      "i =  9973\n",
      "i =  9974\n",
      "i =  9975\n",
      "i =  9976\n",
      "i =  9977\n",
      "i =  9978\n",
      "i =  9979\n",
      "i =  9980\n",
      "i =  9981\n",
      "i =  9982\n",
      "i =  9983\n",
      "i =  9984\n",
      "i =  9985\n",
      "i =  9986\n",
      "i =  9987\n",
      "i =  9988\n",
      "i =  9989\n",
      "i =  9990\n",
      "i =  9991\n",
      "i =  9992\n",
      "i =  9993\n",
      "i =  9994\n",
      "i =  9995\n",
      "i =  9996\n",
      "i =  9997\n",
      "i =  9998\n",
      "i =  9999\n"
     ]
    }
   ],
   "source": [
    "n_samples_train = len(train_dataset_e)\n",
    "d_batch_e, path_batch_e = train_dataset_e[0:n_samples_train]\n",
    "d_batch_v, path_batch_v = train_dataset_v[0:n_samples_train]\n",
    "\n",
    "for i in range(n_samples_train):\n",
    "\n",
    "    print('i = ', i)\n",
    "    # test that edge_to_node works\n",
    "    path_batch_v2 = edge_to_node(path_batch_e[i, :], edge_list, grid_size, device)\n",
    "    # print(path_batch_v2)\n",
    "    # print(path_batch_v[i,:,:])\n",
    "    assert torch.allclose(path_batch_v2, path_batch_v[i,:,:])\n",
    "\n",
    "    # test node_to_edge works\n",
    "    path_batch_e2 = node_to_edge(path_batch_v[i:i+1,:,:], edge_list)\n",
    "    assert torch.allclose(path_batch_e2, path_batch_e[i, :])\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "path_batch_e2 = node_to_edge(path_batch_v[0:1,:,:], edge_list)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "torch.allclose(path_batch_e2, path_batch_e[0,:])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[ 0.,  0.,  0.,  ...,  0.,  0.,  0.],\n",
       "        [-1.,  0.,  1.,  ...,  0.,  0.,  0.],\n",
       "        [ 0.,  0.,  1.,  ...,  0.,  0.,  0.],\n",
       "        ...,\n",
       "        [ 0.,  0.,  1.,  ...,  0.,  0.,  0.],\n",
       "        [ 0.,  0.,  0.,  ...,  0.,  0.,  0.],\n",
       "        [ 0.,  0.,  0.,  ...,  0.,  0.,  0.]])"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "path_batch_e2 - path_batch_e"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x1572f85b0>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAGdCAYAAABU0qcqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAWrElEQVR4nO3df2zV9b348VcpUtBb6q9R6ATtjAsqCCpKFLNpbCQEjd4lZia4EEzm4uoASVTYBkYdVtxmiEpATaYsA9E/hjpzlRCmGCO/fziNG2Ak2skKM9EWcVbXfr5/7Lve2wnzej2nr7Y8Hsnnj/M5H/p+fYKeZz6nH86pKIqiCADoYQOyBwDg6CRAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkGJg9gD/qrOzM/bt2xfV1dVRUVGRPQ4AX1JRFHHw4MGoq6uLAQOOfJ3T6wK0b9++GDlyZPYYAHxFzc3Nccoppxzx+V4XoOrq6oiIeGf7aTH0P3r+HcL//ObYHl8ToD/5e3wWr8R/db2eH0mvC9A/33Yb+h8DYmh1zwdoYMUxPb4mQL/y/z9h9It+jeImBABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkKFuAlixZEqeddloMHjw4Jk6cGJs3by7XUgD0QWUJ0JNPPhlz5syJO+64I7Zv3x7jxo2LyZMnx4EDB8qxHAB9UFkCdP/998f3v//9mDFjRpx11lmxbNmyOPbYY+NXv/pVOZYDoA8qeYA+/fTT2LZtWzQ0NPz3IgMGRENDQ2zYsOFzx7e3t0dbW1u3DYD+r+QBev/996OjoyNqa2u77a+trY2WlpbPHd/U1BQ1NTVdm69iADg6pN8FN2/evGhtbe3ampubs0cCoAeU/OsYTj755KisrIz9+/d3279///4YPnz4546vqqqKqqqqUo8BQC9X8iugQYMGxfnnnx/r1q3r2tfZ2Rnr1q2Liy66qNTLAdBHleUL6ebMmRPTp0+PCRMmxIUXXhiLFy+OQ4cOxYwZM8qxHAB9UFkC9N3vfjf++te/xoIFC6KlpSXGjx8fL7zwwuduTADg6FVRFEWRPcT/1NbWFjU1NfHB7m+kfCX35LrxPb4mQH/y9+KzeCmeidbW1hg6dOgRj0u/Cw6Ao5MAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQDswc4kv/85tgYWHFMj6+7Zt/OHl/znybXjU9bG6CnuQICIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQouQBampqigsuuCCqq6tj2LBhcc0118SuXbtKvQwAfVzJA7R+/fpobGyMjRs3xtq1a+Ozzz6LK664Ig4dOlTqpQDow0r+YaQvvPBCt8ePP/54DBs2LLZt2xbf+ta3Sr0cAH1U2X8H1NraGhERJ554YrmXAqAPKevXMXR2dsbs2bNj0qRJMWbMmMMe097eHu3t7V2P29rayjkSAL1EWa+AGhsb44033ohVq1Yd8Zimpqaoqanp2kaOHFnOkQDoJcoWoJtvvjmee+65ePHFF+OUU0454nHz5s2L1tbWrq25ublcIwHQi5T8LbiiKOJHP/pRrF69Ol566aWor6//t8dXVVVFVVVVqccAoJcreYAaGxtj5cqV8cwzz0R1dXW0tLRERERNTU0MGTKk1MsB0EeV/C24pUuXRmtra1x66aUxYsSIru3JJ58s9VIA9GFleQsOAL6Iz4IDIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQIqyfh1DXzS5bnza2mv27UxZN/OcgaOXKyAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBiYPYA/LfJdeNT1l2zb2fKuhF55wzkcwUEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkKLsAbr33nujoqIiZs+eXe6lAOhDyhqgLVu2xMMPPxznnHNOOZcBoA8qW4A++uijmDZtWjz66KNxwgknlGsZAPqosgWosbExpk6dGg0NDf/2uPb29mhra+u2AdD/leX7gFatWhXbt2+PLVu2fOGxTU1Nceedd5ZjDAB6sZJfATU3N8esWbNixYoVMXjw4C88ft68edHa2tq1NTc3l3okAHqhkl8Bbdu2LQ4cOBDnnXde176Ojo54+eWX46GHHor29vaorKzseq6qqiqqqqpKPQYAvVzJA3T55ZfH66+/3m3fjBkzYvTo0XH77bd3iw8AR6+SB6i6ujrGjBnTbd9xxx0XJ5100uf2A3D08kkIAKQoy11w/+qll17qiWUA6ENcAQGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIgRY/8Q1R6t8l149PWXrNvZ9ramecNuAICIIkAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBmYPwNFtct34tLXX7NuZtnbmeUNv4QoIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIEVZAvTee+/F9ddfHyeddFIMGTIkxo4dG1u3bi3HUgD0USX/MNIPPvggJk2aFJdddlk8//zz8bWvfS327NkTJ5xwQqmXAqAPK3mAFi1aFCNHjozHHnusa199fX2plwGgjyv5W3DPPvtsTJgwIa699toYNmxYnHvuufHoo48e8fj29vZoa2vrtgHQ/5U8QG+//XYsXbo0zjjjjFizZk3cdNNNMXPmzFi+fPlhj29qaoqampqubeTIkaUeCYBeqKIoiqKUP3DQoEExYcKEePXVV7v2zZw5M7Zs2RIbNmz43PHt7e3R3t7e9bitrS1GjhwZl8bVMbDimFKOBt34Qjooj78Xn8VL8Uy0trbG0KFDj3hcya+ARowYEWeddVa3fWeeeWa8++67hz2+qqoqhg4d2m0DoP8reYAmTZoUu3bt6rZv9+7dceqpp5Z6KQD6sJIH6JZbbomNGzfGPffcE2+99VasXLkyHnnkkWhsbCz1UgD0YSUP0AUXXBCrV6+OJ554IsaMGRN33313LF68OKZNm1bqpQDow0r+74AiIq688sq48sory/GjAegnfBYcACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQYmD0AZJlcNz5t7TX7dqatnXne8D+5AgIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZCi5AHq6OiI+fPnR319fQwZMiROP/30uPvuu6MoilIvBUAfVvLPglu0aFEsXbo0li9fHmeffXZs3bo1ZsyYETU1NTFz5sxSLwdAH1XyAL366qtx9dVXx9SpUyMi4rTTTosnnngiNm/eXOqlAOjDSv4W3MUXXxzr1q2L3bt3R0TEa6+9Fq+88kpMmTLlsMe3t7dHW1tbtw2A/q/kV0Bz586Ntra2GD16dFRWVkZHR0csXLgwpk2bdtjjm5qa4s477yz1GAD0ciW/AnrqqadixYoVsXLlyti+fXssX748fvGLX8Ty5csPe/y8efOitbW1a2tubi71SAD0QiW/Arr11ltj7ty5cd1110VExNixY+Odd96JpqammD59+ueOr6qqiqqqqlKPAUAvV/IroI8//jgGDOj+YysrK6Ozs7PUSwHQh5X8Cuiqq66KhQsXxqhRo+Lss8+OHTt2xP333x833HBDqZcCoA8reYAefPDBmD9/fvzwhz+MAwcORF1dXfzgBz+IBQsWlHopAPqwkgeouro6Fi9eHIsXLy71jwagH/FZcACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABIUfJ/iAp8scl149PWXrNvZ9ramedN7+MKCIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBiYPQDQsybXjU9be82+nSnrHo3nHJF73v8broAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUnzpAL388stx1VVXRV1dXVRUVMTTTz/d7fmiKGLBggUxYsSIGDJkSDQ0NMSePXtKNS8A/cSXDtChQ4di3LhxsWTJksM+f99998UDDzwQy5Yti02bNsVxxx0XkydPjk8++eQrDwtA//GlPw17ypQpMWXKlMM+VxRFLF68OH7605/G1VdfHRERv/71r6O2tjaefvrpuO66677atAD0GyX9HdDevXujpaUlGhoauvbV1NTExIkTY8OGDYf9M+3t7dHW1tZtA6D/K2mAWlpaIiKitra22/7a2tqu5/5VU1NT1NTUdG0jR44s5UgA9FLpd8HNmzcvWltbu7bm5ubskQDoASUN0PDhwyMiYv/+/d3279+/v+u5f1VVVRVDhw7ttgHQ/5U0QPX19TF8+PBYt25d1762trbYtGlTXHTRRaVcCoA+7kvfBffRRx/FW2+91fV47969sXPnzjjxxBNj1KhRMXv27PjZz34WZ5xxRtTX18f8+fOjrq4urrnmmlLODUAf96UDtHXr1rjsssu6Hs+ZMyciIqZPnx6PP/543HbbbXHo0KG48cYb48MPP4xLLrkkXnjhhRg8eHDppgagz/vSAbr00kujKIojPl9RURF33XVX3HXXXV9pMAD6t/S74AA4OgkQACkECIAUAgRACgECIIUAAZBCgABIIUAApPjS/xAV4P9qct34lHXX7NuZsm5E3jlH5J1328HOOOGbX3ycKyAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIMXA7AH+VVEUERHx9/gsokgeBugX2g52pq399+KztLWzzrvto3+s+8/X8yOpKL7oiB725z//OUaOHJk9BgBfUXNzc5xyyilHfL7XBaizszP27dsX1dXVUVFR8aX/fFtbW4wcOTKam5tj6NChZZiw9zkazznCeR9N5300nnNE3z3voiji4MGDUVdXFwMGHPk3Pb3uLbgBAwb822L+bw0dOrRP/YWVwtF4zhHO+2hyNJ5zRN8875qami88xk0IAKQQIABS9LsAVVVVxR133BFVVVXZo/SYo/GcI5z30XTeR+M5R/T/8+51NyEAcHTod1dAAPQNAgRACgECIIUAAZCiXwVoyZIlcdppp8XgwYNj4sSJsXnz5uyRyqqpqSkuuOCCqK6ujmHDhsU111wTu3btyh6rR917771RUVERs2fPzh6l7N577724/vrr46STToohQ4bE2LFjY+vWrdljlVVHR0fMnz8/6uvrY8iQIXH66afH3Xff/YWfMdaXvPzyy3HVVVdFXV1dVFRUxNNPP93t+aIoYsGCBTFixIgYMmRINDQ0xJ49e3KGLbF+E6Ann3wy5syZE3fccUds3749xo0bF5MnT44DBw5kj1Y269evj8bGxti4cWOsXbs2Pvvss7jiiivi0KFD2aP1iC1btsTDDz8c55xzTvYoZffBBx/EpEmT4phjjonnn38+3nzzzfjlL38ZJ5xwQvZoZbVo0aJYunRpPPTQQ/HHP/4xFi1aFPfdd188+OCD2aOVzKFDh2LcuHGxZMmSwz5/3333xQMPPBDLli2LTZs2xXHHHReTJ0+OTz75pIcnLYOin7jwwguLxsbGrscdHR1FXV1d0dTUlDhVzzpw4EAREcX69euzRym7gwcPFmeccUaxdu3a4tvf/nYxa9as7JHK6vbbby8uueSS7DF63NSpU4sbbrih277vfOc7xbRp05ImKq+IKFavXt31uLOzsxg+fHjx85//vGvfhx9+WFRVVRVPPPFEwoSl1S+ugD799NPYtm1bNDQ0dO0bMGBANDQ0xIYNGxIn61mtra0REXHiiScmT1J+jY2NMXXq1G5/5/3Zs88+GxMmTIhrr702hg0bFueee248+uij2WOV3cUXXxzr1q2L3bt3R0TEa6+9Fq+88kpMmTIlebKesXfv3mhpaen233lNTU1MnDixX7y29boPI/2/eP/996OjoyNqa2u77a+trY0//elPSVP1rM7Ozpg9e3ZMmjQpxowZkz1OWa1atSq2b98eW7ZsyR6lx7z99tuxdOnSmDNnTvz4xz+OLVu2xMyZM2PQoEExffr07PHKZu7cudHW1hajR4+OysrK6OjoiIULF8a0adOyR+sRLS0tERGHfW3753N9Wb8IEP+4InjjjTfilVdeyR6lrJqbm2PWrFmxdu3aGDx4cPY4PaazszMmTJgQ99xzT0REnHvuufHGG2/EsmXL+nWAnnrqqVixYkWsXLkyzj777Ni5c2fMnj076urq+vV5Hy36xVtwJ598clRWVsb+/fu77d+/f38MHz48aaqec/PNN8dzzz0XL774Ykm+yqI327ZtWxw4cCDOO++8GDhwYAwcODDWr18fDzzwQAwcODA6OjqyRyyLESNGxFlnndVt35lnnhnvvvtu0kQ949Zbb425c+fGddddF2PHjo3vfe97ccstt0RTU1P2aD3in69f/fW1rV8EaNCgQXH++efHunXruvZ1dnbGunXr4qKLLkqcrLyKooibb745Vq9eHb///e+jvr4+e6Syu/zyy+P111+PnTt3dm0TJkyIadOmxc6dO6OysjJ7xLKYNGnS526x3717d5x66qlJE/WMjz/++HNfaFZZWRmdnXlfsd2T6uvrY/jw4d1e29ra2mLTpk3947Ut+y6IUlm1alVRVVVVPP7448Wbb75Z3HjjjcXxxx9ftLS0ZI9WNjfddFNRU1NTvPTSS8Vf/vKXru3jjz/OHq1HHQ13wW3evLkYOHBgsXDhwmLPnj3FihUrimOPPbb4zW9+kz1aWU2fPr34+te/Xjz33HPF3r17i9/+9rfFySefXNx2223Zo5XMwYMHix07dhQ7duwoIqK4//77ix07dhTvvPNOURRFce+99xbHH3988cwzzxR/+MMfiquvvrqor68v/va3vyVP/tX1mwAVRVE8+OCDxahRo4pBgwYVF154YbFx48bskcoqIg67PfbYY9mj9aijIUBFURS/+93vijFjxhRVVVXF6NGji0ceeSR7pLJra2srZs2aVYwaNaoYPHhw8Y1vfKP4yU9+UrS3t2ePVjIvvvjiYf8/nj59elEU/7gVe/78+UVtbW1RVVVVXH755cWuXbtyhy4RX8cAQIp+8TsgAPoeAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABI8f8AA0eAjhYA8iQAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "current_ind = 0\n",
    "plt.imshow(path_batch_v[current_ind,:,:])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x1578f03a0>"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAGdCAYAAABU0qcqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAWrElEQVR4nO3df2zV9b348VcpUtBb6q9R6ATtjAsqCCpKFLNpbCQEjd4lZia4EEzm4uoASVTYBkYdVtxmiEpATaYsA9E/hjpzlRCmGCO/fziNG2Ak2skKM9EWcVbXfr5/7Lve2wnzej2nr7Y8Hsnnj/M5H/p+fYKeZz6nH86pKIqiCADoYQOyBwDg6CRAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkGJg9gD/qrOzM/bt2xfV1dVRUVGRPQ4AX1JRFHHw4MGoq6uLAQOOfJ3T6wK0b9++GDlyZPYYAHxFzc3Nccoppxzx+V4XoOrq6oiIeGf7aTH0P3r+HcL//ObYHl8ToD/5e3wWr8R/db2eH0mvC9A/33Yb+h8DYmh1zwdoYMUxPb4mQL/y/z9h9It+jeImBABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkKFuAlixZEqeddloMHjw4Jk6cGJs3by7XUgD0QWUJ0JNPPhlz5syJO+64I7Zv3x7jxo2LyZMnx4EDB8qxHAB9UFkCdP/998f3v//9mDFjRpx11lmxbNmyOPbYY+NXv/pVOZYDoA8qeYA+/fTT2LZtWzQ0NPz3IgMGRENDQ2zYsOFzx7e3t0dbW1u3DYD+r+QBev/996OjoyNqa2u77a+trY2WlpbPHd/U1BQ1NTVdm69iADg6pN8FN2/evGhtbe3ampubs0cCoAeU/OsYTj755KisrIz9+/d3279///4YPnz4546vqqqKqqqqUo8BQC9X8iugQYMGxfnnnx/r1q3r2tfZ2Rnr1q2Liy66qNTLAdBHleUL6ebMmRPTp0+PCRMmxIUXXhiLFy+OQ4cOxYwZM8qxHAB9UFkC9N3vfjf++te/xoIFC6KlpSXGjx8fL7zwwuduTADg6FVRFEWRPcT/1NbWFjU1NfHB7m+kfCX35LrxPb4mQH/y9+KzeCmeidbW1hg6dOgRj0u/Cw6Ao5MAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQDswc4kv/85tgYWHFMj6+7Zt/OHl/znybXjU9bG6CnuQICIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQouQBampqigsuuCCqq6tj2LBhcc0118SuXbtKvQwAfVzJA7R+/fpobGyMjRs3xtq1a+Ozzz6LK664Ig4dOlTqpQDow0r+YaQvvPBCt8ePP/54DBs2LLZt2xbf+ta3Sr0cAH1U2X8H1NraGhERJ554YrmXAqAPKevXMXR2dsbs2bNj0qRJMWbMmMMe097eHu3t7V2P29rayjkSAL1EWa+AGhsb44033ohVq1Yd8Zimpqaoqanp2kaOHFnOkQDoJcoWoJtvvjmee+65ePHFF+OUU0454nHz5s2L1tbWrq25ublcIwHQi5T8LbiiKOJHP/pRrF69Ol566aWor6//t8dXVVVFVVVVqccAoJcreYAaGxtj5cqV8cwzz0R1dXW0tLRERERNTU0MGTKk1MsB0EeV/C24pUuXRmtra1x66aUxYsSIru3JJ58s9VIA9GFleQsOAL6Iz4IDIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQIqyfh1DXzS5bnza2mv27UxZN/OcgaOXKyAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBiYPYA/LfJdeNT1l2zb2fKuhF55wzkcwUEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkKLsAbr33nujoqIiZs+eXe6lAOhDyhqgLVu2xMMPPxznnHNOOZcBoA8qW4A++uijmDZtWjz66KNxwgknlGsZAPqosgWosbExpk6dGg0NDf/2uPb29mhra+u2AdD/leX7gFatWhXbt2+PLVu2fOGxTU1Nceedd5ZjDAB6sZJfATU3N8esWbNixYoVMXjw4C88ft68edHa2tq1NTc3l3okAHqhkl8Bbdu2LQ4cOBDnnXde176Ojo54+eWX46GHHor29vaorKzseq6qqiqqqqpKPQYAvVzJA3T55ZfH66+/3m3fjBkzYvTo0XH77bd3iw8AR6+SB6i6ujrGjBnTbd9xxx0XJ5100uf2A3D08kkIAKQoy11w/+qll17qiWUA6ENcAQGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIgRY/8Q1R6t8l149PWXrNvZ9ramecNuAICIIkAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBmYPwNFtct34tLXX7NuZtnbmeUNv4QoIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIEVZAvTee+/F9ddfHyeddFIMGTIkxo4dG1u3bi3HUgD0USX/MNIPPvggJk2aFJdddlk8//zz8bWvfS327NkTJ5xwQqmXAqAPK3mAFi1aFCNHjozHHnusa199fX2plwGgjyv5W3DPPvtsTJgwIa699toYNmxYnHvuufHoo48e8fj29vZoa2vrtgHQ/5U8QG+//XYsXbo0zjjjjFizZk3cdNNNMXPmzFi+fPlhj29qaoqampqubeTIkaUeCYBeqKIoiqKUP3DQoEExYcKEePXVV7v2zZw5M7Zs2RIbNmz43PHt7e3R3t7e9bitrS1GjhwZl8bVMbDimFKOBt34Qjooj78Xn8VL8Uy0trbG0KFDj3hcya+ARowYEWeddVa3fWeeeWa8++67hz2+qqoqhg4d2m0DoP8reYAmTZoUu3bt6rZv9+7dceqpp5Z6KQD6sJIH6JZbbomNGzfGPffcE2+99VasXLkyHnnkkWhsbCz1UgD0YSUP0AUXXBCrV6+OJ554IsaMGRN33313LF68OKZNm1bqpQDow0r+74AiIq688sq48sory/GjAegnfBYcACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQYmD0AZJlcNz5t7TX7dqatnXne8D+5AgIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZCi5AHq6OiI+fPnR319fQwZMiROP/30uPvuu6MoilIvBUAfVvLPglu0aFEsXbo0li9fHmeffXZs3bo1ZsyYETU1NTFz5sxSLwdAH1XyAL366qtx9dVXx9SpUyMi4rTTTosnnngiNm/eXOqlAOjDSv4W3MUXXxzr1q2L3bt3R0TEa6+9Fq+88kpMmTLlsMe3t7dHW1tbtw2A/q/kV0Bz586Ntra2GD16dFRWVkZHR0csXLgwpk2bdtjjm5qa4s477yz1GAD0ciW/AnrqqadixYoVsXLlyti+fXssX748fvGLX8Ty5csPe/y8efOitbW1a2tubi71SAD0QiW/Arr11ltj7ty5cd1110VExNixY+Odd96JpqammD59+ueOr6qqiqqqqlKPAUAvV/IroI8//jgGDOj+YysrK6Ozs7PUSwHQh5X8Cuiqq66KhQsXxqhRo+Lss8+OHTt2xP333x833HBDqZcCoA8reYAefPDBmD9/fvzwhz+MAwcORF1dXfzgBz+IBQsWlHopAPqwkgeouro6Fi9eHIsXLy71jwagH/FZcACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABIUfJ/iAp8scl149PWXrNvZ9ramedN7+MKCIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBiYPQDQsybXjU9be82+nSnrHo3nHJF73v8broAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUnzpAL388stx1VVXRV1dXVRUVMTTTz/d7fmiKGLBggUxYsSIGDJkSDQ0NMSePXtKNS8A/cSXDtChQ4di3LhxsWTJksM+f99998UDDzwQy5Yti02bNsVxxx0XkydPjk8++eQrDwtA//GlPw17ypQpMWXKlMM+VxRFLF68OH7605/G1VdfHRERv/71r6O2tjaefvrpuO66677atAD0GyX9HdDevXujpaUlGhoauvbV1NTExIkTY8OGDYf9M+3t7dHW1tZtA6D/K2mAWlpaIiKitra22/7a2tqu5/5VU1NT1NTUdG0jR44s5UgA9FLpd8HNmzcvWltbu7bm5ubskQDoASUN0PDhwyMiYv/+/d3279+/v+u5f1VVVRVDhw7ttgHQ/5U0QPX19TF8+PBYt25d1762trbYtGlTXHTRRaVcCoA+7kvfBffRRx/FW2+91fV47969sXPnzjjxxBNj1KhRMXv27PjZz34WZ5xxRtTX18f8+fOjrq4urrnmmlLODUAf96UDtHXr1rjsssu6Hs+ZMyciIqZPnx6PP/543HbbbXHo0KG48cYb48MPP4xLLrkkXnjhhRg8eHDppgagz/vSAbr00kujKIojPl9RURF33XVX3HXXXV9pMAD6t/S74AA4OgkQACkECIAUAgRACgECIIUAAZBCgABIIUAApPjS/xAV4P9qct34lHXX7NuZsm5E3jlH5J1328HOOOGbX3ycKyAAUggQACkECIAUAgRACgECIIUAAZBCgABIIUAApBAgAFIIEAApBAiAFAIEQAoBAiCFAAGQQoAASCFAAKQQIABSCBAAKQQIgBQCBEAKAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIMXA7AH+VVEUERHx9/gsokgeBugX2g52pq399+KztLWzzrvto3+s+8/X8yOpKL7oiB725z//OUaOHJk9BgBfUXNzc5xyyilHfL7XBaizszP27dsX1dXVUVFR8aX/fFtbW4wcOTKam5tj6NChZZiw9zkazznCeR9N5300nnNE3z3voiji4MGDUVdXFwMGHPk3Pb3uLbgBAwb822L+bw0dOrRP/YWVwtF4zhHO+2hyNJ5zRN8875qami88xk0IAKQQIABS9LsAVVVVxR133BFVVVXZo/SYo/GcI5z30XTeR+M5R/T/8+51NyEAcHTod1dAAPQNAgRACgECIIUAAZCiXwVoyZIlcdppp8XgwYNj4sSJsXnz5uyRyqqpqSkuuOCCqK6ujmHDhsU111wTu3btyh6rR917771RUVERs2fPzh6l7N577724/vrr46STToohQ4bE2LFjY+vWrdljlVVHR0fMnz8/6uvrY8iQIXH66afH3Xff/YWfMdaXvPzyy3HVVVdFXV1dVFRUxNNPP93t+aIoYsGCBTFixIgYMmRINDQ0xJ49e3KGLbF+E6Ann3wy5syZE3fccUds3749xo0bF5MnT44DBw5kj1Y269evj8bGxti4cWOsXbs2Pvvss7jiiivi0KFD2aP1iC1btsTDDz8c55xzTvYoZffBBx/EpEmT4phjjonnn38+3nzzzfjlL38ZJ5xwQvZoZbVo0aJYunRpPPTQQ/HHP/4xFi1aFPfdd188+OCD2aOVzKFDh2LcuHGxZMmSwz5/3333xQMPPBDLli2LTZs2xXHHHReTJ0+OTz75pIcnLYOin7jwwguLxsbGrscdHR1FXV1d0dTUlDhVzzpw4EAREcX69euzRym7gwcPFmeccUaxdu3a4tvf/nYxa9as7JHK6vbbby8uueSS7DF63NSpU4sbbrih277vfOc7xbRp05ImKq+IKFavXt31uLOzsxg+fHjx85//vGvfhx9+WFRVVRVPPPFEwoSl1S+ugD799NPYtm1bNDQ0dO0bMGBANDQ0xIYNGxIn61mtra0REXHiiScmT1J+jY2NMXXq1G5/5/3Zs88+GxMmTIhrr702hg0bFueee248+uij2WOV3cUXXxzr1q2L3bt3R0TEa6+9Fq+88kpMmTIlebKesXfv3mhpaen233lNTU1MnDixX7y29boPI/2/eP/996OjoyNqa2u77a+trY0//elPSVP1rM7Ozpg9e3ZMmjQpxowZkz1OWa1atSq2b98eW7ZsyR6lx7z99tuxdOnSmDNnTvz4xz+OLVu2xMyZM2PQoEExffr07PHKZu7cudHW1hajR4+OysrK6OjoiIULF8a0adOyR+sRLS0tERGHfW3753N9Wb8IEP+4InjjjTfilVdeyR6lrJqbm2PWrFmxdu3aGDx4cPY4PaazszMmTJgQ99xzT0REnHvuufHGG2/EsmXL+nWAnnrqqVixYkWsXLkyzj777Ni5c2fMnj076urq+vV5Hy36xVtwJ598clRWVsb+/fu77d+/f38MHz48aaqec/PNN8dzzz0XL774Ykm+yqI327ZtWxw4cCDOO++8GDhwYAwcODDWr18fDzzwQAwcODA6OjqyRyyLESNGxFlnndVt35lnnhnvvvtu0kQ949Zbb425c+fGddddF2PHjo3vfe97ccstt0RTU1P2aD3in69f/fW1rV8EaNCgQXH++efHunXruvZ1dnbGunXr4qKLLkqcrLyKooibb745Vq9eHb///e+jvr4+e6Syu/zyy+P111+PnTt3dm0TJkyIadOmxc6dO6OysjJ7xLKYNGnS526x3717d5x66qlJE/WMjz/++HNfaFZZWRmdnXlfsd2T6uvrY/jw4d1e29ra2mLTpk3947Ut+y6IUlm1alVRVVVVPP7448Wbb75Z3HjjjcXxxx9ftLS0ZI9WNjfddFNRU1NTvPTSS8Vf/vKXru3jjz/OHq1HHQ13wW3evLkYOHBgsXDhwmLPnj3FihUrimOPPbb4zW9+kz1aWU2fPr34+te/Xjz33HPF3r17i9/+9rfFySefXNx2223Zo5XMwYMHix07dhQ7duwoIqK4//77ix07dhTvvPNOURRFce+99xbHH3988cwzzxR/+MMfiquvvrqor68v/va3vyVP/tX1mwAVRVE8+OCDxahRo4pBgwYVF154YbFx48bskcoqIg67PfbYY9mj9aijIUBFURS/+93vijFjxhRVVVXF6NGji0ceeSR7pLJra2srZs2aVYwaNaoYPHhw8Y1vfKP4yU9+UrS3t2ePVjIvvvjiYf8/nj59elEU/7gVe/78+UVtbW1RVVVVXH755cWuXbtyhy4RX8cAQIp+8TsgAPoeAQIghQABkEKAAEghQACkECAAUggQACkECIAUAgRACgECIIUAAZBCgABI8f8AA0eAjhYA8iQAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.imshow(edge_to_node(path_batch_e[current_ind, :], edge_list, grid_size, device))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[[1., 0., 0.,  ..., 0., 0., 0.],\n",
       "         [1., 0., 0.,  ..., 0., 0., 0.],\n",
       "         [1., 0., 0.,  ..., 0., 0., 0.],\n",
       "         ...,\n",
       "         [0., 0., 0.,  ..., 1., 0., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 1., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 0., 1.]],\n",
       "\n",
       "        [[1., 1., 1.,  ..., 0., 0., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 0., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 0., 0.],\n",
       "         ...,\n",
       "         [0., 0., 0.,  ..., 1., 0., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 1., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 0., 1.]],\n",
       "\n",
       "        [[1., 1., 1.,  ..., 0., 0., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 0., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 0., 0.],\n",
       "         ...,\n",
       "         [0., 0., 0.,  ..., 1., 0., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 1., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 0., 1.]],\n",
       "\n",
       "        ...,\n",
       "\n",
       "        [[1., 0., 0.,  ..., 0., 0., 0.],\n",
       "         [1., 0., 0.,  ..., 0., 0., 0.],\n",
       "         [1., 0., 0.,  ..., 0., 0., 0.],\n",
       "         ...,\n",
       "         [0., 0., 0.,  ..., 0., 0., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 0., 0.],\n",
       "         [0., 0., 0.,  ..., 1., 1., 1.]],\n",
       "\n",
       "        [[1., 0., 0.,  ..., 0., 0., 0.],\n",
       "         [0., 1., 0.,  ..., 0., 0., 0.],\n",
       "         [0., 0., 1.,  ..., 0., 0., 0.],\n",
       "         ...,\n",
       "         [0., 0., 0.,  ..., 1., 0., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 1., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 0., 1.]],\n",
       "\n",
       "        [[1., 0., 0.,  ..., 0., 0., 0.],\n",
       "         [0., 1., 0.,  ..., 0., 0., 0.],\n",
       "         [0., 0., 1.,  ..., 0., 0., 0.],\n",
       "         ...,\n",
       "         [0., 0., 0.,  ..., 1., 0., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 1., 0.],\n",
       "         [0., 0., 0.,  ..., 0., 0., 1.]]])"
      ]
     },
     "execution_count": 57,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "path_batch_v"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "path_pred_v = edge_to_node(path_pred_e[0,:], edge_list, m, device)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[1.0092, 1.0092, 1.2189, 0.6226, 0.9307, 2.1700, 1.2663, 1.1577, 0.9408,\n",
       "         1.4733, 0.9391, 1.0154],\n",
       "        [1.3819, 1.8840, 3.2437, 1.6348, 1.4395, 1.4045, 1.9256, 1.4444, 2.8192,\n",
       "         1.5376, 1.7477, 0.4750],\n",
       "        [1.7863, 1.8966, 2.6886, 1.4849, 1.9326, 1.5171, 2.8703, 0.9649, 1.2185,\n",
       "         1.8032, 1.4642, 0.4962],\n",
       "        [0.7364, 1.8064, 1.3889, 0.8513, 1.4145, 2.1086, 1.2603, 1.9350, 2.6512,\n",
       "         1.8555, 0.7515, 1.1265],\n",
       "        [0.4744, 2.1914, 1.0014, 0.8261, 1.0158, 0.4617, 1.8826, 0.7757, 1.7622,\n",
       "         1.5625, 1.6873, 0.7768],\n",
       "        [0.8840, 1.4778, 1.5555, 2.0741, 0.6070, 1.3145, 1.5515, 1.3257, 2.0697,\n",
       "         1.7149, 1.7691, 0.8553],\n",
       "        [0.5531, 0.5531, 1.4763, 1.5158, 2.7629, 1.8127, 0.4565, 1.9081, 0.9188,\n",
       "         2.5251, 1.3988, 1.0761],\n",
       "        [0.5716, 2.0912, 2.1146, 2.4111, 2.1377, 1.5328, 0.8188, 0.9818, 1.0564,\n",
       "         1.9264, 1.7989, 0.0000],\n",
       "        [1.4382, 2.0307, 1.0545, 1.9584, 2.4317, 0.6853, 0.6013, 2.1799, 0.8752,\n",
       "         1.1839, 1.5099, 1.0985],\n",
       "        [1.1828, 2.7337, 1.6377, 1.6129, 1.1482, 1.9476, 1.9802, 1.6278, 2.7141,\n",
       "         0.9512, 1.2021, 1.6602],\n",
       "        [0.2577, 1.1592, 1.3169, 1.3716, 1.5881, 1.0687, 2.6507, 1.1067, 0.9489,\n",
       "         2.5532, 1.7588, 0.9185],\n",
       "        [0.0000, 0.6523, 2.0027, 0.6884, 0.0000, 0.8126, 1.3408, 1.0793, 1.1395,\n",
       "         0.6501, 1.0534, 1.8092]], grad_fn=<DivBackward0>)"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "path_pred_v"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.colorbar.Colorbar at 0x3022e0210>"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.imshow(path_pred_v.cpu().detach().numpy())\n",
    "plt.colorbar()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "d_batch, path_batch = test_dataset_e[0:5]\n",
    "path_pred = DYS_net(d_batch).detach().cpu()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "ind = 0\n",
    "path_batch = edge_to_node(path_batch[ind,:], edge_list=edge_list, m=m, device=device)\n",
    "path_pred = edge_to_node(path_pred[ind,:], edge_list=edge_list, m=m, device=device)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[1.0000, 0.5000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.5000]])"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "path_batch"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([[0.5000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.0000],\n",
       "        [0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,\n",
       "         0.0000, 0.0000, 0.5000]])"
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "path_pred"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "fpo_dys_env",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.10"
  },
  "orig_nbformat": 4
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
